完整的使用jieba分詞後生成詞雲
阿新 • • 發佈:2021-06-11
匯入需要的模組
import jieba jieba.setLogLevel(jieba.logging.INFO) # 設定日誌等級,使底層日誌不要打印出來 import jieba.analyse from wordcloud import WordCloud from wordcloud import ImageColorGenerator import matplotlib.pyplot as plt
使用jieba生成字串:浮點數的鍵值對來表示的關鍵詞及頻率,這個地方可以根據需要自定義很多引數,具體參考jieba文件
frequencies = {} for word,m injieba.analyse.textrank(text_file,topK=100,withWeight=True,allowPOS=('ns','n','vn','v','nr','nt','nw','nz','PER','LOC','ORG')): frequencies[word] = m
生成詞雲
backgroud_Image = plt.imread(pic_file) wc= WordCloud( font_path = font_path, # 字型檔案的路徑,字串 width = 1000, # 繪圖區寬度,預設400,整型 height = 700, #繪圖區高度,預設200,整型 mask = backgroud_Image, scale = 2, # 計算過程和實際繪圖的比例,浮點型,預設1,數值越大圖片越清晰 max_words = 200, # 繪圖使用的最大單詞數,整型,預設200 background_color = None, # 背景顏色,顏色值,預設為'black' mode = 'RGBA', # 模式,預設為'RGB',當為'RGBA'時,倘若背景顏色為None,則會得到透明的背景 relative_scaling = 0.5, # 單詞出現頻率對其字型大小的權重,值為0時,只考慮單詞排名對字型大小的影響,值為1時,具有2倍出現頻率的單詞具有2倍的字型大小,一般值設定為0.5最棒,浮點型).generate_from_frequencies( frequencies ) image_colors = ImageColorGenerator(backgroud_Image) wc.recolor(color_func=image_colors) # 重新上色 plt.imshow(wc) # 生成圖片 plt.axis('off') # 關閉座標軸 plt.show() # 顯示圖片 wc.to_file(ciyun_file)