建立專案資料夾 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...