根據詞頻生成詞雲(Python wordcloud實現)


網上大多數詞雲的代碼都是基於原始文本生成,這里寫一個根據詞頻生成詞雲的小例子,都是基於現成的函數。

另外有個在線制作詞雲的網站也很不錯,推薦使用:WordArt

安裝詞雲與畫圖包

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

運行后得到如下結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM