網上大多數詞雲的代碼都是基於原始文本生成,這裡寫一個根據詞頻生成詞雲的小例子,都是基於現成的函數。 安裝詞雲與畫圖包 word_cloud.py(生成詞雲的程式) record.txt文件示例,第1列是單詞,第2列是頻率,空格分隔 運行後得到如下結果: ...
網上大多數詞雲的代碼都是基於原始文本生成,這裡寫一個根據詞頻生成詞雲的小例子,都是基於現成的函數。
安裝詞雲與畫圖包
pip3 install wordcloud
pip3 install matplotlib
word_cloud.py(生成詞雲的程式)
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 生成詞雲
def create_word_cloud():
frequencies = {}
for line in open("./record.txt"):
arr = line.split(" ")
frequencies[arr[0]] = float(arr[1])
# 支持中文, SimHei.ttf可從以下地址下載:https://github.com/cystanford/word_cloud
wc = WordCloud(
font_path="./SimHei.ttf",
max_words=100,
width=2000,
height=1200,
)
word_cloud = wc.generate_from_frequencies(frequencies)
# 寫詞雲圖片
word_cloud.to_file("wordcloud2.jpg")
# 顯示詞雲文件
plt.imshow(word_cloud)
plt.axis("off")
plt.show()
# 根據詞頻生成詞雲
create_word_cloud()
record.txt文件示例,第1列是單詞,第2列是頻率,空格分隔
中文 100
英文 2
日語 3
運行後得到如下結果: