수업시간에는 텍스트 시각화의 방법으로 WordCloud 패키지를 실습하였습니다. 실습한 WordCloud 패키지는 원형의 형태로 데이터를 출력합니다. 이것만으로도 데이터를 시각화하기엔 충분할 수도 있습니다. WordCloud의 후속작인 WordCloud2 패키지는 당연히 후속작 답게 더 다채롭고 다양한 기능으로 데이터를 시각화하는데 도움을 줍니다.

1. 설치

Wordcloud2는 Github를 통해서 설치합니다.

require(devtools)
install_github("lchiffon/wordcloud2")	

 

2. 기능

wordcloud2는 크게 2가지의 기능을 제공합니다.

1) Wordcloud2 : 전통적인 워드 클라우드

전통적인 워드 클라우드의 형태(원 혹은 타원형) 로 워드클라우드를 만듭니다. 특이점은 별도의 파라미터 조작이 없어도 HTML5로 저장한다면 반응형 워드클라우드가 생성된다는 점 입니다.

library(wordcloud2)
wordcloud2(data = demoFreq)

WordCloud2에서 추가된 기능인 이미지 파일을 마스크로 사용하여 이미지 파일에 워드 클라우드를 생성할 수도 있습니다. 단, 이미지 파일에 단어가 들어갈 곳이 진한 색으로 되어 있어야 한다는 점 입니다.

figpath 파라미터를 사용하면 이미지 파일 위에 워드클라우드를 그릴 수 있습니다. 그러나 figpath를 사용하려면 아래 패키지를 추가로 설치해야 잘 동작한다고 합니다.

 

실습에 사용될 파일

install.packages("htmlwidgets")
install.packages("tmltools")
install.packages("jsonlite")
install.packages("yaml")
install.packages("base64enc")

라이브러리를 모두 로딩하고 명령어를 사용하여 워드클라우드를 만듭니다.

library(wordcloud2)
library(htmlwidgets)
library(tmltools)
library(jsonlite)
library(yaml)
library(base64enc)

워드클라우드를 만듭니다.

figPath = system.file("examples/football.png",package = "wordcloud2")
wordcloud2(demoFreq, figPath = figPath, size = 1.5,color = "skyblue")

 

(컴퓨터 사양을 많이 탑니다... 많이 느려요)

2) letterCloud : 문자, 단어로 워드 클라우드

문자나 단어로 워드 클라우드를 만들 수도 있습니다.

letterCloud(demoFreq, word = "R", size = 2)

word 파라미터에 단어를 넣으면 단어 또한 워드클라우드로 만들 수 있지만 컴퓨터의 성능이 좋아야 출력이 원활하게 됩니다. (제 노트북에선 실행조차 안되네요)

 

3. 파라미터

  • data : 각 열에 word와 freq가 포함 된 데이터 프레임
  • size : 글꼴 크기, 기본값은 1. 큰 크기는 큰 단어를 의미합니다.
  • fontFamily : 사용할 글꼴.
  • fontWeight : 사용할 폰트의 무게 (예 : normal, bold or 600)
  • color : 텍스트의 색상, 'random-dark'및 'random-light'키워드를 사용할 수 있습니다. Color Vector 도 사용할 수 있습니다.
  • minSize : 자막의 문자열
  • backgroundColor : 배경색.
  • gridSize : 캔버스의 가용성을 표시하기 위한 그리드의 크기 (픽셀 단위) 그리드 크기가 클수록 단어 사이의 간격이 커집니다.
  • minRotation :단어가 회전해야 하는 경우 텍스트가 회전해야하는 최소 회전 (라디안 값)입니다.
  • maxRotation : 단어가 회전해야하는 경우 텍스트가 회전해야하는 최대 회전 (rad). 모든 텍스트를 한 각도로 유지하는 것과 동일한 두 값을 설정하십시오.
  • rotateRatio : 단어가 회전 할 확률. 항상 회전하려면 숫자를 1로 설정하십시오.
  • shape : 그릴 모양의 "구름". 키워드 선물이 될 수 있습니다. 사용할 수있는 선물은 '원형'(기본값), '카디오이드'(사과 또는 심장 모양 곡선, 가장 잘 알려진 극형 방정식), '다이아몬드'(별의 사각형), '삼각형 앞으로', '삼각형', ' 및 '별'.
  • ellipticity : degree of “flatness” of the shape wordcloud2.js should draw
  • figPath : 단어 구름에 사용되는 그림.
  • widgetsize : 위젯의 크기

 

 

출처

https://cran.r-project.org/web/packages/wordcloud2/vignettes/wordcloud.html

https://hwan0447.blog.me/221241027145

 

'Programming > R' 카테고리의 다른 글

인터랙티브 그래프 만들기 (1)  (0) 2019.05.29
단계 구분도 만들기  (0) 2019.05.29
텍스트 마이닝 - KoNLP  (0) 2019.05.20
그래프 만들기  (0) 2019.04.30
데이터 정제하기 (데이터 클린징)  (0) 2019.04.15

+ Recent posts