詞雲是一個比較常見的數據可視化方法,通過詞的大小可以讓人一眼就可以看到哪個詞比較突出。
我現在知道的畫詞雲的方法有兩種,一種是用pyecharts,另一種是用python的wordcloud包。這裏主要講使用pyecharts畫詞雲的方法。
pyecharts github的鏈接:https://github.com/pyecharts/pyecharts,但是感覺寫的不是很清楚啊
用pyecharts畫詞雲時,輸入數據中的每一個詞爲(word,value)這樣的元祖形式,然後將所有的詞放入一個list中。
例如:[('Sam S Club',10000), ('Macys',6181)]
我們還是來舉個?:
### 使用pyecharts畫詞雲
from pyecharts.charts import WordCloud
data = [('python', 23),('word',10),('cloud',5)]
mywordcloud = WordCloud()
mywordcloud.add('',data, shape='circle')
### 渲染圖片
mywordcloud.render()
### 指定渲染圖片存放的路徑
### mywordcloud.render('E:/wordcloud.html')
運行程序後會在指定的位置生成一個html文件,有時候這個html文件打開的很慢,不能秒開的那種,需要等一等。
詞雲圖的輪廓也可以選擇,有 'circle', 'cardioid', 'diamond', 'triangle-forward', 'triangle', 'pentagon',默認的詞雲輪廓爲circle。我找了一圈兒,好像沒有發現pyecharts支持詞雲填充圖片。wordcloud包支持詞雲填充圖片。
用wordcloud畫詞雲時,不能直接輸入word的list,需要用空格將所有的詞連接成一個字符串。或者使用詞和詞頻的形式。