Python生成中文詞云

2021-09-25 17:09:36 字數 2170 閱讀 4776

建立專案資料夾 mywordcloud

命令列輸入:cd mywordcloud

python -m venv virenv

pip install numpy

pip install wordcloud

python -m pip install -u pip setuptools(安裝matplotlib失敗時,需要先執行該命令)

python -m pip install matplotlib

分析請看注釋

import re

import collections # 詞頻統計模組

import numpy as np # numpy資料處理模組

import jieba # 中文分詞模組

import wordcloud # 詞云展示模組

from pil import image # 影象處理模組

import matplotlib.pyplot as plt # 影象展示模組

# 給定檔案,讀取文字

with open(

'春江花月夜'

) as fp:

sentence = fp.read(

)# 文字預處理

pattern = re.compile(u'[\t,/。\n.-:;)(??""了」「…我]'

)# 定義正規表示式匹配模式,去除文字中標點符號

sentence = re.sub(pattern, '', sentence)

# 將符合模式的字元替換為'', 即去除句子中標點符號

# 文字切割為單詞

word_list_cut = jieba.cut(sentence, cut_all=false)

# 精確模式分詞,分割中文句子為單詞

word_list_filter =

# 收集分割的單詞

remove_words =

[u'的', u',', u'和', u'是', u'0403', u' ', u'\u3000'

]# 自定義去除詞庫

for word in word_list_cut:

if word not in remove_words:

# 詞頻統計

word_counts = collections.counter(word_list_filter)

# 對分詞做詞頻統計

# word_counts_top10 = word_counts.most_common(10) # 獲取前10最高頻的詞

print(word_counts)

# print(word_counts_top10)

# 詞云生成與展示

masque = np.array(image.open(

))# 從給定獲取詞云背景

wc= wordcloud.wordcloud(

font_path=

'simkai.ttf', # 設定字型,需要設定為系統存在字型,可檢視c:\windows\fonts下字型屬性

mask=masque, # 背景圖設定

max_words=200, # 最多顯示詞數

max_font_size=100 # 字型最大值

)wc.generate_from_frequencies(word_counts)

# 從單詞列表生成詞云

image_color = wordcloud.imagecolorgenerator(masque)

# 從背景圖建立顏色方案

wc.recolor(color_func=image_color)

# 將詞云顏色設定為背景圖方案

plt.imshow(wc)

# 顯示詞云

plt.axis(

'off'

)# 關閉座標軸

plt.show(

)# 顯示影象

上方是原圖,下方是生成的詞云

python中文詞云生成

一 詞云 二 python實現中文詞云顯示 1 需要準備的python庫包括,matplotlib,jieba和wordcloud,可以通過pip install 進行安裝。2 實現 coding utf 8 生成txt檔案的詞云 import matplotlib.pyplot as plt fr...

python生成中文詞云 python生成詞云

生成詞云還挺簡單的。就用wordcloud庫就可以生成。wordcloud用的內容可以是字串,也可以是dict.生成中文資訊的時候要指定字型檔案。不然返回的都是方塊。關於扒網頁資訊。要注意的是在header裡放一些user agent一類的東西 假裝是真的有人從瀏覽器點開 不然可能 會識別出來,啥都...

中文詞頻統計與詞云生成

中文詞頻統計 追風箏的人 txt 2.從檔案讀取待分析文字。3.安裝並使用jieba進行中文分詞。pip install jieba import jieba jieba.lcut text 4.更新詞庫,加入所分析物件的專業詞彙。jieba.add word 天罡北斗陣 逐個新增 jieba.lo...