詞云分析wordcloud

2021-09-11 03:52:36 字數 1585 閱讀 9022

jieba模組:用來切割中文的模組

pillow:python3中用來專門處理影象的模組

import re

import jieba

from pil import image

from wordcloud import wordcloud

import numpy as np

def gen_wordcloud(text, filename):

#1). 強調分割中有問題的詞,預設分割結果不正確的詞;

jieba.suggest_freq((『微博』), true)

jieba.suggest_freq((『熱搜』), true)

##2).如果是英文本元,切割英文

#data =

#with open(』/tmp/passwd』) as f:

#for line in f:

#result1 = re.split(r』\s|:|/』, line)

##如果item存在資料並且不是空格或者數字, 則繼續進行處理;

#result2 = [item for item in result1 if not re.findall(r』\s+|\d+』, item) and item]

#data.extend(result2)

#2). 難點: 如何切割中文, jieba, lcut

result = jieba.lcut(text)

print(result)

#繪製詞云

#3). 開啟, 獲取的資料資訊;

#4). 建立詞云物件, 設定屬性

wcobj = wordcloud.wordcloud(

mask = img_mask, #資料如何填充到

background_color=「snow」, #北京顏色

font_path="/usr/share/fonts/wqy-zenhei/wqy-zenhei.ttc", #如果是中文, 指定字型庫(fc-list :lang=zh)

min_font_size=5, # 中最小的字型大小

max_font_size=50, # 中最小的字型大小

width=1000, #寬度

height=1000, #高

)#5). 生成;

#詞云繪製時, 預設之處理字串型別, 怎麼分隔每個單詞? 必須以逗號分隔符分割

wcobj.generate(",".join(result))

wcobj.to_file(filename)

ifname== 『main』:

text = 「馬雲曾公開表態稱對錢沒興趣稱其從來沒碰過錢上了微博熱搜」

filename = 『doc/wcobj.png』

gen_wordcloud(text, filename)

使用wordcloud庫生成詞云

w wordcloud.wordcloud 引數 引數描述 width 指定詞云物件生成的寬度,預設400畫素 height 制定詞云物件生成的高度,預設200畫素 min font size 制定詞雲中字型的最小字型大小,預設4號 max font size 指定詞雲中字型的最大字型大小,根據高度...

wordcloud詞云使用方法

中文詞云 用jieba做的分詞 英文詞云 利用背景顯示詞云 開啟文字 with open cn.txt encoding utf 8 as f text f.read print text 生成物件 wc wordcloud font path simsun.ttc width 800,height...

python詞云生成 wordcloud庫

全文 於 wordcloud是優秀的詞云展示第三方庫 方法描述 w.generate txt 向wordcloud物件w中載入文字txt,w.generate python and wordcloud w.to file filename 將詞云輸出為影象檔案,png或.jpg?x oss proc...