You are looking for information, articles, knowledge about the topic nail salons open on sunday near me 파이썬 워드 클라우드 on Google, you do not find the information you need! Here are the best content compiled and compiled by the toplist.Experience-Porthcawl.com team, along with other related topics such as: 파이썬 워드 클라우드 구글 워드클라우드, 파이썬 워드클라우드 csv, 파이썬 워드클라우드 예제, 실시간 워드클라우드, 파이썬 워드클라우드 빈도수, 파이썬 워드클라우드 설치, Python wordcloud 옵션, 파이썬 워드클라우드 색상
파이썬 워드 클라우드(Word cloud) 만들기
- Article author: dorudoru.tistory.com
- Reviews from users: 42220 Ratings
- Top rated: 4.2
- Lowest rated: 1
- Summary of article content: Articles about 파이썬 워드 클라우드(Word cloud) 만들기 먼저 파이썬으로 워드 클라우드를 만들기 위해서는 아래의 과정이 필요합니다. 워드클라우드를 설치해 줘야 합니다.(pip install wordcloud); Konlpy 설치 … …
- Most searched keywords: Whether you are looking for 파이썬 워드 클라우드(Word cloud) 만들기 먼저 파이썬으로 워드 클라우드를 만들기 위해서는 아래의 과정이 필요합니다. 워드클라우드를 설치해 줘야 합니다.(pip install wordcloud); Konlpy 설치 … 파이썬으로 워드 클라우드 만들기 먼저 파이썬으로 워드 클라우드를 만들기 위해서는 아래의 과정이 필요합니다. 워드클라우드를 설치해 줘야 합니다.(pip install wordcloud) Konlpy 설치 Collection 설치 워드..꿈 많은 아이 Doru
- Table of Contents:
[시각화] 파이썬으로 한글 워드클라우드(Word Cloud) 생성하고 원하는 이미지 형태로 출력하기
- Article author: doitgrow.com
- Reviews from users: 25441 Ratings
- Top rated: 4.2
- Lowest rated: 1
- Summary of article content: Articles about [시각화] 파이썬으로 한글 워드클라우드(Word Cloud) 생성하고 원하는 이미지 형태로 출력하기 오늘 소개해드릴 코드는 한글 문서의 단어를 추출하여 워드클라우드(Word Cloud)로 시각화하는 방법입니다. 파이썬에서 시각화는 거의 모두 … …
- Most searched keywords: Whether you are looking for [시각화] 파이썬으로 한글 워드클라우드(Word Cloud) 생성하고 원하는 이미지 형태로 출력하기 오늘 소개해드릴 코드는 한글 문서의 단어를 추출하여 워드클라우드(Word Cloud)로 시각화하는 방법입니다. 파이썬에서 시각화는 거의 모두 … 안녕하세요. 오늘 소개해드릴 코드는 한글 문서의 단어를 추출하여 워드클라우드(Word Cloud)로 시각화하는 방법입니다. 파이썬에서 시각화는 거의 모두 matplotlib 라이브러리를 기반으로 하고 있습니다. 그러나..
- Table of Contents:
DoITgrow
[시각화] 파이썬으로 한글 워드클라우드(Word Cloud) 생성하고 원하는 이미지 형태로 출력하기 본문포스팅 주요 내용
0 필요 패키지 불러오기
1 konlpy 패키지를 통한 한글 텍스트 추출 및 간단한 전처리
2 한글로 워드클라우드 시각화
3 원하는 이미지로 워드클라우드 생성하기
마치며
티스토리툴바
[ Word Cloud ] 파이썬으로 Word Cloud 사용하기
- Article author: knowable.tistory.com
- Reviews from users: 38540 Ratings
- Top rated: 3.5
- Lowest rated: 1
- Summary of article content: Articles about [ Word Cloud ] 파이썬으로 Word Cloud 사용하기 Word Cloud란? 태그 클라우드(영어: tag cloud) 또는 워드 클라우드(word cloud)는 메타 데이터에서 얻어진 태그들을 분석하여 중요도나 인기도 등을 … …
- Most searched keywords: Whether you are looking for [ Word Cloud ] 파이썬으로 Word Cloud 사용하기 Word Cloud란? 태그 클라우드(영어: tag cloud) 또는 워드 클라우드(word cloud)는 메타 데이터에서 얻어진 태그들을 분석하여 중요도나 인기도 등을 … 1. Word Cloud란? 태그 클라우드(영어: tag cloud) 또는 워드 클라우드(word cloud)는 메타 데이터에서 얻어진 태그들을 분석하여 중요도나 인기도 등을 고려하여 시각적으로 늘어놓아 표시하는 것이다…
- Table of Contents:
computer_study
[ Word Cloud ] 파이썬으로 Word Cloud 사용하기 본문1 Word Cloud란
2 개발 환경
3 필요 모듈 import
4 전체 코드
5 참고자료
티스토리툴바
[워드클라우드] 파이썬으로 워드클라우드 만들기 아주쉬워요
- Article author: domdom.tistory.com
- Reviews from users: 26950 Ratings
- Top rated: 3.4
- Lowest rated: 1
- Summary of article content: Articles about [워드클라우드] 파이썬으로 워드클라우드 만들기 아주쉬워요 numpy와 PIL 라이브러리는 원하는 모양의 워드클라우드를 만들기 위하여 필요합니다. from wordcloud import WordCloud import matplotlib.pyplot as … …
- Most searched keywords: Whether you are looking for [워드클라우드] 파이썬으로 워드클라우드 만들기 아주쉬워요 numpy와 PIL 라이브러리는 원하는 모양의 워드클라우드를 만들기 위하여 필요합니다. from wordcloud import WordCloud import matplotlib.pyplot as … 일단 워드클라우드를 만들기 위해 필요한 라이브러리들을 임포트해줍니다 numpy와 PIL 라이브러리는 원하는 모양의 워드클라우드를 만들기 위하여 필요합니다. from wordcloud import WordCloud import matplotlib..
- Table of Contents:
티스토리 뷰
티스토리툴바
워드 클라우드(Word Cloud) 생성하기(with 파이썬 DataFrame)
- Article author: zzinnam.tistory.com
- Reviews from users: 32297 Ratings
- Top rated: 4.3
- Lowest rated: 1
- Summary of article content: Articles about 워드 클라우드(Word Cloud) 생성하기(with 파이썬 DataFrame) 지난 포스팅에서는 R을 활용한 워드 클라우드를 생성해 보았어요. … Python/데이터 시각화 … 파이썬의 데이터 프레임을 활용하여 워드 클라우드를 … …
- Most searched keywords: Whether you are looking for 워드 클라우드(Word Cloud) 생성하기(with 파이썬 DataFrame) 지난 포스팅에서는 R을 활용한 워드 클라우드를 생성해 보았어요. … Python/데이터 시각화 … 파이썬의 데이터 프레임을 활용하여 워드 클라우드를 … 지난 포스팅에서는 R을 활용한 워드 클라우드를 생성해 보았어요. [R 그래픽스] 워드 클라우드(Word Cloud) 생성하기 워드 클라우드(Word Cloud)는 단어의 빈도수를 구름 형태로 표현하는 그래픽 기법입니다. 통상..
- Table of Contents:
패키지 설치 및 로딩
데이터 프레임 생성 및 딕셔너리 변환
워드 클라우드 생성
그래프 출력
워드 클라우드 모양 변경
태그
관련글
댓글0
티스토리툴바
[Matplotlib] 파이썬 워드 클라우드(Word Cloud) 시각화 예제
- Article author: jimmy-ai.tistory.com
- Reviews from users: 20151 Ratings
- Top rated: 3.0
- Lowest rated: 1
- Summary of article content: Articles about [Matplotlib] 파이썬 워드 클라우드(Word Cloud) 시각화 예제 Python 워드 클라우드 색상, 크기, 모양 지정 방법 정리 안녕하세요. 이번 글에서는 파이썬의 WordCloud 라이브러리를 활용하여 단어의 빈도를 한 눈 … …
- Most searched keywords: Whether you are looking for [Matplotlib] 파이썬 워드 클라우드(Word Cloud) 시각화 예제 Python 워드 클라우드 색상, 크기, 모양 지정 방법 정리 안녕하세요. 이번 글에서는 파이썬의 WordCloud 라이브러리를 활용하여 단어의 빈도를 한 눈 … Python 워드 클라우드 색상, 크기, 모양 지정 방법 정리 안녕하세요. 이번 글에서는 파이썬의 WordCloud 라이브러리를 활용하여 단어의 빈도를 한 눈에 시각화할 수 있는 워드 클라우드를 그려보고 컬러맵, 크기,..
- Table of Contents:
Python 워드 클라우드 색상 크기 모양 지정 방법 정리
티스토리툴바
[python] 네이버 블로그 크롤링 결과로 WordCloud 시각화하기 :: WONA_IN_IT
- Article author: wonhwa.tistory.com
- Reviews from users: 30647 Ratings
- Top rated: 3.6
- Lowest rated: 1
- Summary of article content: Articles about [python] 네이버 블로그 크롤링 결과로 WordCloud 시각화하기 :: WONA_IN_IT 안녕하세요! 오늘은 저번에 만들었던 네이버 블로그 크롤러를 이용해서 txt 파일을 만들고. 만들어진 텍스트 파일을 이용하여 워드 클라우드(WordCloud)로 … …
- Most searched keywords: Whether you are looking for [python] 네이버 블로그 크롤링 결과로 WordCloud 시각화하기 :: WONA_IN_IT 안녕하세요! 오늘은 저번에 만들었던 네이버 블로그 크롤러를 이용해서 txt 파일을 만들고. 만들어진 텍스트 파일을 이용하여 워드 클라우드(WordCloud)로 … 안녕하세요! 오늘은 저번에 만들었던 네이버 블로그 크롤러를 이용해서 txt 파일을 만들고 만들어진 텍스트 파일을 이용하여 워드 클라우드(WordCloud)로 시각화해보도록 하겠습니다. step1. 데이터 준비 [python]..Everyday Happy day
같이 성장해 나가는 블로그가 되어요 😉 - Table of Contents:
티스토리툴바
python에서 워드클라우드 만드는 방법 정리
- Article author: khann.tistory.com
- Reviews from users: 10463 Ratings
- Top rated: 3.5
- Lowest rated: 1
- Summary of article content: Articles about python에서 워드클라우드 만드는 방법 정리 text = “파이썬 워드클라우드 파이썬 좋아 워드클라우드 파이썬 라이브러리 좋아 파이썬 워드클라우드 예시 워드클라우드 우한 폐렴 조심 데이터 분석 … …
- Most searched keywords: Whether you are looking for python에서 워드클라우드 만드는 방법 정리 text = “파이썬 워드클라우드 파이썬 좋아 워드클라우드 파이썬 라이브러리 좋아 파이썬 워드클라우드 예시 워드클라우드 우한 폐렴 조심 데이터 분석 … python에서 워드클라우드 만드는 방법 정리 https://www.onoffmix.com/event/259676 [비트코인] 비트코인의 중요성과 미래 세미나 세상의 모든 모임 ‘온오프믹스’ www.onoffmix.com 워드클라우드 Worldcloud..관심있는 분야의 정리 목적으로 시작했습니다.
컴퓨터 공학, 경제학, 교육에 관심이 많습니다.문의 이메일
khann365d@지메일닷컴 - Table of Contents:
python에서 워드클라우드 만드는 방법 정리
티스토리툴바
WordCloud for Python documentation — wordcloud 1.8.1 documentation
- Article author: amueller.github.io
- Reviews from users: 49308 Ratings
- Top rated: 4.5
- Lowest rated: 1
- Summary of article content: Articles about WordCloud for Python documentation — wordcloud 1.8.1 documentation Here you find instructions on how to create wordclouds with my Python wordcloud project. Compared to other wordclouds, my algorithm has the advantage of. …
- Most searched keywords: Whether you are looking for WordCloud for Python documentation — wordcloud 1.8.1 documentation Here you find instructions on how to create wordclouds with my Python wordcloud project. Compared to other wordclouds, my algorithm has the advantage of.
- Table of Contents:
강의 01 워드 클라우드 – 토닥토닥 파이썬 – 데이터 시각화
- Article author: wikidocs.net
- Reviews from users: 23929 Ratings
- Top rated: 4.2
- Lowest rated: 1
- Summary of article content: Articles about 강의 01 워드 클라우드 – 토닥토닥 파이썬 – 데이터 시각화 간편하게 사용하면서도 꽤 이쁜 기능도 많은 워드 클라우드 Word Cloud 모듈 (for … WordCloud import matplotlib.pyplot as plt text = ”’python python python … …
- Most searched keywords: Whether you are looking for 강의 01 워드 클라우드 – 토닥토닥 파이썬 – 데이터 시각화 간편하게 사용하면서도 꽤 이쁜 기능도 많은 워드 클라우드 Word Cloud 모듈 (for … WordCloud import matplotlib.pyplot as plt text = ”’python python python … 온라인 책을 제작 공유하는 플랫폼 서비스
- Table of Contents:
See more articles in the same category here: toplist.Experience-Porthcawl.com/blog.
파이썬 워드 클라우드(Word cloud) 만들기
반응형
파이썬으로 워드 클라우드 만들기
먼저 파이썬으로 워드 클라우드를 만들기 위해서는 아래의 과정이 필요합니다.
워드클라우드를 설치해 줘야 합니다.(pip install wordcloud)
Konlpy 설치
Collection 설치
워드 클라우드란?
태그 클라우드라고도 불리우며 단어의 빈도수를 체크하여 시각적으로 표현하는 방식을 말합니다.
단어 구름이라는 뜻처럼 각각의 태그를 분석하여 중요도나 인기도를 고려하여 웹사이트에 표시합니다.
플리커에서 가장 먼저 사용되었다고 하네요.
태그 클라우드(영어: tag cloud) 또는 워드 클라우드(word cloud)는 메타 데이터에서 얻어진 태그들을 분석하여 중요도나 인기도 등을 고려하여 시각적으로 늘어 놓아 웹 사이트에 표시하는 것이다. 보통은 2차원의 표와 같은 형태로 태그들이 배치되며 이때 순서는 알파벳/가나다 순으로 배치 된다. 시각적인 중요도를 강조를 위해 각 태그들은 그 중요도(혹은 인기도)에 따라 글자의 색상이나 굵기등 형태가 변한다. 사용자는 이렇게 표시된 태그 중 마음에 드는 키워드를 발견하고 그것을 선택하여 그 메타 데이터에 원래 연결된 웹 페이지로 이동하게 된다.
워드 클라우드 패키지 설치
아래와 같이 pip install을 통해서 설치가 가능하구요.
numpy, pillow, matplotlib 등 다양한 관련된 패키지가 같이 설치됩니다.
그리고 워드 클라우드는 비주얼 C++ 설치가 필요하므로
(Error : Microsoft Visual C++ 14.0 Is Required)
아래의 링크에서 설치하시기 바랍니다.
그냥 기본만 설치해도 6기가가 넘어가네요 ㅠㅠ
KoNLPy 패키지 설치
이후에는 Konlpy를 설치해야 하는데요.
konlpy로 한글 형태소 분리
링크에서 파일을 다운로드 받아서 설치하시면 됩니다.
설치는 whl파일을 다운로드 받고 해당 파일을 pip 명령어로 설치하시면 됩니다.
기존 pip 설치는 서버에 있는 것을 설치하기 대문에 whl까지 쓰지 않는데요.
다운로드한 패키지 설치시에는 정확한 파일명을 명시해줘야 합니다.
collentions : 리스트에서 갯수 카운트 하는 것 필요
실제로 간단하게 코드를 자보면 아래와 같습니다.
인터넷에서 코드가 많이 나와있어서 참고하여 작성하였습니다.
from wordcloud import WordCloud from konlpy.tag import Komoran from collections import Counter import numpy as np from PIL import Image # open으로 txt파일을 열고 read()를 이용하여 utf-8 읽는다. text = open(‘test.txt’, encoding=’utf-8′).read() # Komoran 함수를 이용해 형태소 분석 komoran = Komoran() line =[] line = komoran.pos(text) n_adj =[] # 명사와 동사 만 n_adj에 넣어주기 for word, tag in line: if tag in [‘NNG’,’NNP’,’NNB’,’VV’,’VA’]: n_adj.append(word) #제외할 단어 추가(를과 의를 삭제함) stop_words = “를 의 ” #추가할 때 띄어쓰기로 추가해주기 stop_words = set(stop_words.split(‘ ‘)) # 불용어를 제외한 단어만 남기기 n_adj = [word for word in n_adj if not word in stop_words] #가장 많이 나온 단어 50개 저장 counts = Counter(n_adj) tags = counts.most_common(50) print(tags) # WordCloud를 생성한다. # 마스크 이미지로 mask = Image.new(“RGBA”,(424,369), (255,255,255)) #(424,369)는 사진 크기, (255,255,255)는 색을의미 image = Image.open(‘heart.png’).convert(“RGBA”) x,y = image.size mask.paste(image,(0,0,x,y),image) mask = np.array(mask) # 한글을 분석하기위해 font를 한글로 지정해주어야 된다. macOS는 .otf , window는 .ttf 파일의 위치를 # 지정해준다. (ex. ‘C:\Windows\Fonts\malgunbd.ttf’) wc = WordCloud(font_path=’C:\Windows\Fonts\malgunbd.ttf’,background_color=’white’, mask=mask,colormap=’prism’,max_font_size=100) cloud = wc.generate_from_frequencies(dict(tags)) import matplotlib.pyplot as plt plt.figure(figsize=(10,8)) plt.imshow(cloud) plt.axis(‘off’) #cloud.to_file(‘fontcloud.png’) 또는 plt.savefig(‘fontcloud.png’, bbox_inches=’tight’) plt.show()
각종 형태소 분석 알고리즘의 품사표에서 원하는 부분만 추출할수 있는데요.
Okt가 가장 많이 사용한다고 합니다.
각 싸이트에서 품사표를 검토하여 원하는 품사만 빼서 확인이 가능합니다.
물론 파이썬을 잘 사용하시지 못하더라도 요즘에는 인터넷 웹사이트에서 간단하게 생성을 해줍니다.
http://wordcloud.kr/
요즘 핫한 나의 해방일지 기사를 통해서 만들어보면 아래처럼 나옵니다.
추앙해요. 해방일지 등등 단어가 나오네요.
다만 품사는 조금 맞지 않아서 번도라던지 미정의 이런 것들도 조금 보입니다.
한국어보다는 좀더 품사가 명확한 영어의 경우에는 보다 이쁘게 나오기도 합니다.
그럼 잘 사용하시기 바랍니다.
반응형
[시각화] 파이썬으로 한글 워드클라우드(Word Cloud) 생성하고 원하는 이미지 형태로 출력하기
반응형
안녕하세요. 오늘 소개해드릴 코드는 한글 문서의 단어를 추출하여 워드클라우드(Word Cloud)로 시각화하는 방법입니다.
파이썬에서 시각화는 거의 모두 matplotlib 라이브러리를 기반으로 하고 있습니다. 그러나 기본적으로 한글을 지원하지 않기 때문에 한글 데이터를 시각화할 경우 폰트가 깨지는 문제가 발생하여 이 부분에 대해서 다뤄보고자 합니다.
그리고 생성한 워드 클라우드의 그림을 우리가 원하는 이미지 형태로 나타낼 수 있는 방법 또한 소개드리려고 합니다.
포스팅 주요 내용
1. konlpy 패키지를 통한 한글 텍스트 추출 및 간단한 전처리
2. 한글로 워드클라우드 시각화
3. 원하는 이미지로 워드클라우드 생성하기
그럼 바로 본론으로 들어가겠습니다~
0. 필요 패키지 불러오기
from wordcloud import WordCloud import matplotlib.pyplot as plt from collections import Counter from konlpy.tag import Okt from PIL import Image import numpy as np
▲ 오늘 학습할 기본 패키지의 구성입니다.
from wordcloud import WordCloud
– 이 패키지는 말그대로 워드클라우드를 생성에 필요한 기본 모듈입니다.
– 이 패키지는 말그대로 워드클라우드를 생성에 필요한 기본 모듈입니다. import matplotlib.pyplot as plt
– 생성한 워드클라우드 데이터를 시각화하여 그리기 위해 불러옵니다.
– 생성한 워드클라우드 데이터를 시각화하여 그리기 위해 불러옵니다. from collections import Counter
– 텍스트를 추출하고, 빈도 수를 추출하기 위해 사용합니다. 기본적으로 워드클라우드는 단어의 출현 빈도가 클수록 더 크게 그려집니다.
– 텍스트를 추출하고, 빈도 수를 추출하기 위해 사용합니다. 기본적으로 워드클라우드는 단어의 출현 빈도가 클수록 더 크게 그려집니다. from konlpy.tag import Okt
– 한국어를 처리하는 대표적인 형태소 분석 패키지입니다. Okt, Kkma 등 여러가지 패키지들이 존재하는데 형태소 분석기마다 명사, 명사 등의 형태소를 조금씩 다르게 처리하므로 다양하게 사용해본 후, 가지고 있는 문서 특성에 적합한 형태소 분석기를 사용하는 것이 좋습니다.
– 한국어를 처리하는 대표적인 형태소 분석 패키지입니다. Okt, Kkma 등 여러가지 패키지들이 존재하는데 형태소 분석기마다 명사, 명사 등의 형태소를 조금씩 다르게 처리하므로 다양하게 사용해본 후, 가지고 있는 문서 특성에 적합한 형태소 분석기를 사용하는 것이 좋습니다. from PIL import Image
– 워드클라우드를 원하는 형태로 그리기 위해 그림을 불러오는 패키지입니다.
– 워드클라우드를 원하는 형태로 그리기 위해 그림을 불러오는 패키지입니다. import numpy as np
– 불러온 그림을 배열로 나타내어 쉽게 처리할 수 있도록 도와주는 패키지입니다.
1. konlpy 패키지를 통한 한글 텍스트 추출 및 간단한 전처리
오늘 사용할 한글 문서는 “대한민국헌법.txt” 파일입니다. 간단히 따라해보실 분들은 아래 텍스트 파일을 받으셔서 사용하셔도 되고, 본인이 가지고 있는 한글 문서가 있다면 그걸로 사용해 보셔도 될 것 같아요.
대한민국헌법.txt 0.04MB
with open(‘대한민국헌법.txt’, ‘r’, encoding=’utf-8′) as f: text = f.read() okt = Okt() nouns = okt.nouns(text) # 명사만 추출 words = [n for n in nouns if len(n) > 1] # 단어의 길이가 1개인 것은 제외 c = Counter(words) # 위에서 얻은 words를 처리하여 단어별 빈도수 형태의 딕셔너리 데이터를 구함
▲ 먼저 txt 파일을 읽어서 모든 내용을 text 변수에 저장했습니다. 그리고 Okt 형태소 분석기 객체를 생성한 후, nouns 함수를 통해 명사만 추출하여 nouns 변수에 담았습니다.
그리고 nouns 변수에 들어있는 단어들 중에서 단어의 길이가 1개인 것들은 큰 의미가 없는 단어라 생각하여 제외하였습니다.
마지막으로 Counter 객체를 통해 단어별 빈도수 딕셔너리 데이터를 얻었고, 이를 c 변수에 담았습니다.
2. 한글로 워드클라우드 시각화
wc = WordCloud(font_path=’malgun’, width=400, height=400, scale=2.0, max_font_size=250) gen = wc.generate_from_frequencies(c) plt.figure() plt.imshow(gen)
▲ 워드클라우드를 생성하기 위해서 제일 먼저 해야할 일은 큰 템플릿을 준비하는 것입니다. 템플릿 정보에는 대표적적으로 그림 크기(width, height, scale, max_font_size) 등의 정보를 넣어주는데 여기서 제일 중요한 것은 바로 한글 폰트를 지정하는 것입니다.
윈도우 사용자를 기준으로 폰트 정보는 “C:\Windows\Fonts”에서 확인할 수 있습니다. 해당 폴더에 들어가면 아래와 같이 다양한 폰트 정보를 확인할 수 있습니다. 여기서 원하는 폰트 파일에 마우스 오른쪽 버튼을 클릭하고 “속성(R)”을 클릭하면 아래 두번째 스크린샷과 같이 폰트의 파일명을 확인할 수 있습니다.
워드클라우드에 사용할 폰트를 고르셨으면 WordCloud 객체를 생성할 때, font_path 파라미터에 폰트 파일명을 똑같이 넣어주면 됩니다. (단, 폰트가 한글을 지원해야만 합니다.)
▼ 작성한 코드를 실행하면 아래와 같이 시각화된 워드클라우드 결과를 확인할 수 있습니다.
여기서 파일로 추출하고 싶다면 아래의 코드를 추가하시면 됩니다.
wc.to_file(‘법전_워드클라우드.png’)
3. 원하는 이미지로 워드클라우드 생성하기
2번까지만 하셔도 간단한 코드 몇 줄로 워드클라우드를 결과를 활용할 수 있지만 픽토그래픽과 같이 워드클라우드를 특정한 이미지 형태로 출력할 수 있다면 그 전달력은 매우 높아질 것 같아요. 그래서 원하는 이미지로 워드클라우드를 생성하는 방법을 추가로 소개드리려고 합니다.
일단 법전에 관한 워드클라우드이므로 책 모양의 워드클라우드로 나타낸다면 그 전달력이 더 커질 것이라 생각했어요.
그래서 책 사진을 웹 상에서 구할려고 했는데 혹시나 포스팅할 경우 저작권 등에 걸리지 않을까하여 제가 직접 사진을 찍어서 템플릿을 만드는 방향으로 작업을 진행했습니다. 템플릿을 만드는 것이 특별한 노하우는 아니지만 간단히 해볼 수 있는 방법을 같이 말씀드릴게요~.
조금 더 두껍고 법전 같은 책이 있다면 좋을텐데 그런 두꺼운 책은 없고 옆에 있는 책을 이용하여 사진을 찍어서 사용했습니다. 이렇게 찍은 사진은 템플릿으로 사용하기 위해 아래와 같이 책의 누끼를 따고, 배경과 구분되도록 색깔의 명암비를 크게 차이나게 만들었습니다.
그래픽 작업은 누구나 쉽게 사용할 수 있는 파워포인트를 이용해 봤구요. 그림을 클릭하면 생성되는 위의 “그림 형식” 또는 “그림 서식” 메뉴에 가면 “배경 제거”라는 기능을 이용할 수 있습니다. 이것을 이용해서 책 이외의 배경은 제거하였는데, 인터넷에서 누끼를 잘 따주는 홈페이지도 많으니 편한 방법을 이용하시면 될 것 같아요. 그리고 “그림 서식”으로 들어가서 그림의 “밝기”를 -100%하여 책 모양 부분을 검은색으로 처리하였습니다.
참고로 워드클라우드를 넣을 공간을 검게 만드는 이유는 뒤의 코드를 보면 이해하시겠지만 우리가 사용하는 이미지를 Image 패키지를 통해 숫자로 변환하면 이미지 위치의 색깔에 따라 0~255 사이의 값을 출력하게 되는데 여기서 0으로 표시된 부분에 워드클라우드가 그려지게 됩니다.
최종적으로 만든 템플릿 이미지는 아래와 같습니다. 생각보다 깔끔하게 책 모양으로 얻은 것 같네요.
책_검은배경.jpg
img = Image.open(‘책_검은배경.jpg’) img_array = np.array(img) wc = WordCloud(font_path=’malgun’, width=400, height=400, scale=2.0, max_font_size=250, mask=img_array) gen = wc.generate_from_frequencies(c) plt.figure() plt.imshow(gen)
▲ 그럼 마지막으로 템플릿을 이용하여 워드클라우드를 그려보았습니다. 먼저 Image.open 함수를 통해 이미지를 불러와서 데이터를 img 변수에 넣었습니다.
이렇게 불러온 이미지는 대략 아래와 같은 데이터 형태를 가지고 있습니다. 아래 예시는 간단히 가로 5픽셀, 세로 5픽셀의 이미지로 255가 하얀색 영역, 0이 검은색 영역인 것을 보여드린 것입니다.
[[255, 255, 255, 255, 255], [255, 0, 0, 0, 255], [255, 0, 0, 0, 255], [255, 0, 0, 0, 255], [255, 255, 255, 255, 255]]실제 이미지의 가로, 세로 픽셀이 훨씬 더 크고, 색깔도 단순히 0~255를 가지지 않고, RGB값(0~255, 0~255, 0~255)으로 가질 수 있는데 일단 그냥 진행해도 워드클라우드는 그려지니까 크게 신경 안쓰셔도 될 것 같아요. 만약 오류가 발생한다면 img_array 변수에 들어있는 숫자 데이터를 보고 데이터를 처리해줘야 할 수 도 있습니다.
여기서 기존 코드와 다른 점은 이미지를 배경으로 사용하기 위해 WordCloud 객체를 생성할 때, “mask” 추가 파라미터를 지정했다는 것입니다.
▼ 이렇게해서 최종적으로 얻은 워드클라우드 시각화 결과는 아래와 같았습니다. 막상 워드클라우드로 그려보니 책 느낌이 조금 사라지긴 했네요. 책이 더 두껍고, 사진 각도를 더 아래에서 찍었다면 더 법전 같은 느낌이 들 것 같네요.
마치며
이렇게 해서 한글 폰트를 이용하여 워드클라우드로 만드는 방법과 원하는 이미지로 그리는 방법까지 소개해드렸습니다. 더 많은 아이디어를 적용해서 좋은 시각화 결과를 얻으시길 바라며, 궁금하신 점이나 오류가 발생하는 부분은 댓글로 문의주시면 빠르게 답변드리겠습니다.
반응형
[ Word Cloud ] 파이썬으로 Word Cloud 사용하기
1. Word Cloud란?
태그 클라우드(영어: tag cloud) 또는 워드 클라우드(word cloud)는 메타 데이터에서 얻어진 태그들을 분석하여 중요도나 인기도 등을 고려하여 시각적으로 늘어놓아 표시하는 것이다. 보통은 2차원의 표와 같은 형태로 태그들이 배치되며 이때 순서는 알파벳/가나다 순으로 배치된다. 시각적인 중요도를 강조를 위해 각 태그들은 그 중요도(혹은 인기도)에 따라 글자의 색상이나 굵기 등 형태가 변한다.
Word Cloud 예시.
2. 개발 환경
사용 소프트웨어 : PyCharm CE
사용 언어 : Python 3.7.0
3. 필요 모듈 import
한글 Word Cloud를 사용하기 위해서 3개의 모듈을 가져온다.
from wordcloud import WordCloud from konlpy.tag import Twitter from collections import Counter
wordcloud
파이썬에선 word cloud 모듈을 제공한다.(pypi.org/project/wordcloud/)
이 모듈을 사용하여 간편하게 word cloud를 사용할 수 있다.
pip install wordcloud
pip를 사용한다면 다음 명령어를 통해 설치할 수 있다.
konlpy
konlpy 모듈을 통해 형태소를 분석할 수 있다.
설치 방법은 우분투, macOS, window 별로 다르다. (konlpy-ko.readthedocs.io/ko/v0.4.3/install/ 참고)
사용법은 https://konlpy.org/en/latest/에서 확인할 수 있다.
collentions
컨테이너에 동일한 값의 자료가 몇 개인지를 파악하는 데 사용하는 모듈. (docs.python.org 참고)
4. 전체 코드
from wordcloud import WordCloud from konlpy.tag import Twitter from collections import Counter # open으로 txt파일을 열고 read()를 이용하여 읽는다. text = open(‘test.txt’).read() twitter = Twitter() # twitter함수를 통해 읽어들인 내용의 형태소를 분석한다. sentences_tag = [] sentences_tag = twitter.pos(text) noun_adj_list = [] # tag가 명사이거나 형용사인 단어들만 noun_adj_list에 넣어준다. for word, tag in sentences_tag: if tag in [‘Noun’ , ‘Adjective’]: noun_adj_list.append(word) # 가장 많이 나온 단어부터 40개를 저장한다. counts = Counter(noun_adj_list) tags = counts.most_common(40) # WordCloud를 생성한다. # 한글을 분석하기위해 font를 한글로 지정해주어야 된다. macOS는 .otf , window는 .ttf 파일의 위치를 # 지정해준다. (ex. ‘/Font/GodoM.otf’) wc = WordCloud(font_path=[otf 파일의 위치],background_color=”white”, max_font_size=60) cloud = wc.generate_from_frequencies(dict(tags)) # 생성된 WordCloud를 test.jpg로 보낸다. cloud.to_file(‘test.jpg’)
생성된 WordCloud를 파일로 생성하지 않고 화면에 띄우고 싶을 땐
import matplotlib.pyplot as plt
matplotlib 모듈을 import 후 코드의 마지막 cloud.to_file(‘test.jpg’) 대신
plt.figure(figsize=(10, 8)) plt.axis(‘off’) plt.imshow(cloud) plt.show()
이를 사용하여 화면에 출력할 수 있다.
5. 참고자료
위키백과: word cloud ko.wikipedia.org/wiki/태그_클라우드
collection 모듈 excelsior-cjh.tistory.com/94
wordcloud 사용법 :myjamong.tistory.com/48
So you have finished reading the 파이썬 워드 클라우드 topic article, if you find this article useful, please share it. Thank you very much. See more: 구글 워드클라우드, 파이썬 워드클라우드 csv, 파이썬 워드클라우드 예제, 실시간 워드클라우드, 파이썬 워드클라우드 빈도수, 파이썬 워드클라우드 설치, Python wordcloud 옵션, 파이썬 워드클라우드 색상