1. 程式人生 > >利用Python的WordCloud生成詞雲

利用Python的WordCloud生成詞雲

python程式碼:

from wordcloud import WordCloud,ImageColorGenerator
import matplotlib.pyplot as plt
from scipy.misc import imread    #載入圖片

#讀取一個txt檔案,根據文字生成詞雲
text = open('/Users/ff/Desktop/text_wordcloud.txt','r').read()

#讀入背景圖片
bg_pic = imread('/Users/ff/Desktop/timg.jpeg')

#生成詞雲
wordcloud = WordCloud(mask=bg_pic,background_color='white',scale=1.5).generate(text)
image_colors = ImageColorGenerator(bg_pic)

#顯示詞雲圖片
plt.imshow(wordcloud)
plt.axis('off') #表示不顯示座標軸
plt.show()

#儲存圖片
wordcloud.to_file('/Users/ff/Desktop/test.jpg')

執行結果:

WoldCloud()常用引數說明:

- font_path:指明要用的字型的路徑,如font_path = '楷體.ttf'

- width:預設值400畫素。設定詞雲畫布的寬度

- height:預設值200畫素。設定詞雲畫布的高度

- mask:預設為空。如果引數為空,則使用二維遮罩(寬和高已設定好的矩形)繪製詞雲。如果 mask 非空,設定的寬高值將被忽略,遮罩形狀被 mask 取代。除全白(#FFFFFF)的部分不會繪製,其餘部分會用於繪製詞雲。

- min_font_size:預設值4,整數型別。設定最小的詞的尺寸/大小

- max_font_size:預設為空,整數型別。設定最大的詞的尺寸/大小

- max_words:預設值200。設定詞雲最多顯示的詞的個數

- background_color:預設值為黑色。設定詞雲畫布底色

- scale:預設值1。值越大,影象密度越大越清晰。即按照比例進行放大畫布,如設定為1.5,則長和寬都是原來畫布的1.5倍

- mode:預設值“RGB”,字串型別。若使用“RGBA”,在background_color不為空時產生透明背景