jieba庫與詞雲的使用——以孫子兵法爲例

1.打開cmd安裝jieba庫和 matplotlib。python

2.打開python,輸入代碼。代碼以下:dom

from wordcloud import WordCloud
import matplotlib.pyplot as plt
import jieba

def create_word_cloud(filename):

    text = open("孫子兵法.txt","r",encoding='GBK').read()  #打開本身想要的文本

    

    wordlist = jieba.cut(text, cut_all=True)  # 結巴分詞

    wl = " ".join(wordlist)

    wc = WordCloud(             #設置詞雲

        background_color="white",        # 設置背景顏色

        max_words=50,        # 設置最大顯示的詞雲數

        font_path='C:/Windows/Fonts/simfang.ttf',        # 索引在C盤上的字體庫

        height=1000,

        width=1000,

        max_font_size=150,        # 設置字體最大值

        random_state=150,        # 設置有多少種隨機生成狀態,即有多少種配色方案

    )

 

    myword = wc.generate(wl)  # 生成詞雲

    plt.imshow(myword)    # 展現詞雲圖

    plt.axis("off")

    plt.show()

    wc.to_file('img_book.png')        # 把詞雲保存下

txt=open("孫子兵法.txt","r",encoding='GBK').read()   #打開本身想要的文本
words=jieba.lcut(txt)
counts={}
for word in words:
    if len(word)==1:  #排除單個字符的分詞結果
        continue
    else :
        counts[word]=counts.get(word,0)+1
items=list(counts.items())
items.sort(key=lambda x:x[1],reverse=True)
for i in range(20):
    word,count=items[i]
    print ("{0:<20}{1:>5}".format(word,count))
if __name__ == '__main__':
    create_word_cloud('孫子兵法')          #運行編輯的函數,得到詞雲

  

3.結果與詞雲效果圖函數

相關文章
相關標籤/搜索