幾行代碼教你使用python製作詞雲(一)

幾行代碼教你使用python製作詞雲(一)

在數據分析或者上臺演示的時候,好看的圖總是會引人注目,而高大上的圖文肯定會給你帶來加分。
話不多說,先放簡單的效果圖(還有進階版的詞雲製作會在以後的文章中提到)

如何做出下面的效果圖呢?

現在大家跟着來,一定能學會!!!

1.準備數據
我這裏是隨便在豆瓣影評找的我不是藥神的影評,我放到一個**.txt**的文本文件裏面

2.詞雲製作的python環境

首先是需要安裝wordcloud庫包,可以使用python的pip命令進行安裝(不會的可以查看我之前的對python安裝庫包的方法的文章)

3.上代碼

import wordcloud  #導入庫包
file = open('./data/WordCloud.txt',encoding='utf-8') #載入數據
text = file.read()

#w = WordCloud(font_path='msyh.ttc').generate(mytext)

w = wordcloud.WordCloud(width=1000,
                        height=700,
                        background_color='white',
                        font_path='msyh.ttc')   
w.generate(text)    #詞雲製作
w.to_file('./img/output2.png')  #保存圖片

4.代碼分析及問題處理

這是運行成功的截圖

這是詞雲結果圖

補充:這裏爲什麼跟一開始的圖不一樣呢?是因爲我在wordcloud()裏面添加了寬爲1000,高爲700,背景爲白色參數

在上訴代碼裏,如果是製作中文的詞雲,沒有賦值字體樣式可能會出現以下詞雲亂碼,而且編碼一般爲utf-8

爲什麼會出現這樣的亂碼呢?這是因爲計算機對每種編碼識別的問題,解決這個問題就是給一段字體樣式代碼讓計算機識別這是中文的詞雲

font_path='msyh.ttc' #字體樣式爲微軟雅黑

5.如果只是想顯示出來而不想生成文件,那麼可以輸入以下代碼(這裏需要一個matplotlib庫)

import matplotlib.pyplot as plt
plt.imshow(w , interpolation="bilinear")
plt.axis("off")

6.到這裏你已經會使用wordcloud製作屬於自己的詞雲了,下篇文章,我將介紹更高級、更美觀的詞雲分享給大家。

完整代碼

#這是一個簡單的中文文本詞雲製作案例
import wordcloud  #導入庫包
file = open('./data/WordCloud.txt',encoding='utf-8') #載入數據
text = file.read()

#w = WordCloud().generate(mytext)

w = wordcloud.WordCloud(width=1000,
                        height=700,
                        background_color='white',
                        font_path='msyh.ttc')   
w.generate(text)    #詞雲製作
w.to_file('./img/output2.png')  #保存圖片
import matplotlib.pyplot as plt  #繪圖
plt.imshow(w , interpolation="bilinear")
plt.axis("off")
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章