Python將文本內容讀取分詞並繪制詞雲圖


功能:Python將文本內容讀取分詞並繪制詞雲圖

import matplotlib
import matplotlib.pyplot as plt #數據可視化
import jieba #詞語切割
import wordcloud #分詞
from wordcloud import WordCloud,ImageColorGenerator,STOPWORDS #詞雲,顏色生成器,停止
import numpy as np #科學計算
from PIL import Image #處理圖片

def ciyun():
    #打開文本
    with open('dancitiao.txt','r',encoding='UTF-8') as f:  # 打開新的文本轉碼為utf-8
        textfile= f.read()  #讀取文本內容
    wordlist = jieba.cut_for_search(textfile)#切割詞語
    space_list = ' '.join(wordlist) # 鏈接詞語
    backgroud = np.array(Image.open('beijin.png')) #背景圖片,只有黑白圖才能按照形狀生成詞雲
    mywordcloud = WordCloud(width=14000, height=2200,
                            background_color=None, mode="RGBA",#背景顏色
                            mask=backgroud, #寫字用的背景圖,從圖片中提取顏色
                            max_words=500, #最大詞語數
                            stopwords=STOPWORDS,#停止的默認詞語
                            font_path='simkai.ttf',#源碼自帶字體
                            max_font_size=200,#最大字體尺寸
                            random_state=50,#隨機角度
                            scale=1).generate(space_list) #生成詞雲
    image_color = ImageColorGenerator(backgroud)#生成詞雲的顏色
    plt.imshow(mywordcloud) #顯示詞雲
    plt.axis('off') #關閉坐標(x,y軸)
    plt.savefig('cytu.png') #保存圖片
    plt.show()#顯示
 
def main():
    ciyun()
 
if __name__ == '__main__':
    main()

 


免責聲明!

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



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