詞云是一種可視化文本數(shù)據(jù)的方法,通過對(duì)文本中出現(xiàn)頻率較高的詞匯進(jìn)行加權(quán)展示,讓人們一目了然地了解該文本的主題、關(guān)鍵字等信息。
Python中,有多個(gè)庫可以實(shí)現(xiàn)詞云的生成,如wordcloud、pytagcloud、tagcloud等。其中最常用的是wordcloud庫。它基于python中的pillow和numpy庫,可以輕松生成美觀、高質(zhì)量的詞云圖形。
import wordcloud import jieba import matplotlib.pyplot as plt text = "這是一段中文文本,我們將通過wordcloud庫生成一張?jiān)~云圖。" # 對(duì)文本進(jìn)行分詞 cut_text = " ".join(jieba.cut(text)) # 生成詞云對(duì)象 wc = wordcloud.WordCloud( font_path="msyh.ttc", # 設(shè)置字體 background_color="white", # 設(shè)置背景色 min_font_size=10, # 最小字號(hào) max_font_size=100, # 最大字號(hào) width=800, height=600) # 圖片寬高 # 生成詞云 wc.generate(cut_text) # 展示詞云圖 plt.imshow(wc, interpolation="bilinear") plt.axis("off") plt.show()
以上代碼演示了如何使用wordcloud庫生成一張簡單的詞云圖。首先對(duì)中文文本進(jìn)行分詞,然后使用WordCloud類生成詞匯對(duì)象,最后調(diào)用generate()方法生成詞云圖。詞云圖的效果可以根據(jù)實(shí)際需求進(jìn)行自定義,如更換字體、背景設(shè)置、顏色控制等。wordcloud庫中還提供了一些擴(kuò)展用法,如基于圖形或圖片生成詞云等。