python詞云庫(kù)wordcloud的使用方法與實(shí)例詳解
wordcloud是優(yōu)秀的詞云展示第三方庫(kù)

一、基本使用
import jieba
import wordcloud
txt = open("1.txt", "r", encoding='utf-8').read()
words = jieba.lcut(txt)
txt_1 = " ".join(words)
# print(txt1)
w = wordcloud.WordCloud(font_path="msyh.ttc",
width=1000, height=700, background_color="white",
)
w.generate(txt_1)
w.to_file("ciyun.png")
二、按圖片形狀生成
import jieba
from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator
import numpy as np
from PIL import Image
txt = open("C:/Users/96356/Desktop/1.txt", "r", encoding='utf-8').read()
words = jieba.lcut(txt)
txt_1 = " ".join(words)
photo = np.array(Image.open('C:/Users/96356/Desktop/2.png'))
# from scipy.misc import imread
# china=imread('C:/Users/96356/Desktop/2.png') #scipy.misc方式都可以讀取圖片
w = WordCloud(font_path="msyh.ttc",
mask=photo,
background_color="white",
)
w.generate(txt_1)
w.to_file("ciyun.png")
三、WordCloud參數(shù)詳解
from wordcloud import WordCloud
| 參數(shù) | 作用 |
|---|---|
| font_path | 字體路徑,需要展現(xiàn)什么字體就把該字體路徑+后綴名寫上,如:font_path = ‘黑體.ttf' |
| width | 輸出的畫布寬度,默認(rèn)為400像素 |
| height | 輸出的畫布高度,默認(rèn)為200像素 |
| prefer_horizontal | 詞語(yǔ)水平方向排版出現(xiàn)的頻率,默認(rèn) 0.9 (所以詞語(yǔ)垂直方向排版出現(xiàn)頻率為 0.1 ) |
| mask | 如果參數(shù)為空,則使用二維遮罩繪制詞云。如果 mask 非空,設(shè)置的寬高值將被忽略,遮罩形狀被 mask 取代。除全白(#FFFFFF)的部分將不會(huì)繪制,其余部分會(huì)用于繪制詞云。如:bg_pic = imread(‘讀取一張圖片.png'),背景圖片的畫布一定要設(shè)置為白色(#FFFFFF),然后顯示的形狀為不是白色的其他顏色??梢杂胮s工具將自己要顯示的形狀復(fù)制到一個(gè)純白色的畫布上再保存,就ok了。一般為mask=np.array(Image.open(‘xxx.jpg'))。其中from PIL import Image |
| scale | 按照比例進(jìn)行放大畫布,如設(shè)置為1.5,則長(zhǎng)和寬都是原來(lái)畫布的1.5倍 |
| min_font_size | 顯示的最小的字體大小 |
| font_step | 字體步長(zhǎng),如果步長(zhǎng)大于1,會(huì)加快運(yùn)算但是可能導(dǎo)致結(jié)果出現(xiàn)較大的誤差 |
| max_words | 要顯示的詞的最大個(gè)數(shù) |
| stopwords | 設(shè)置需要屏蔽的詞,如果為空,則使用內(nèi)置的STOPWORDS |
| background_color | 背景顏色,如background_color=‘white',背景顏色為白色 |
| max_font_size | 顯示的最大的字體大小 |
| mode | 當(dāng)參數(shù)為“RGBA”并且background_color不為空時(shí),背景為透明 |
| relative_scaling | 詞頻和字體大小的關(guān)聯(lián)性 |
| color_func | 生成新顏色的函數(shù),如果為空,則使用 self.color_func |
| regexp | 使用正則表達(dá)式分隔輸入的文本 |
| collocations | 是否包括兩個(gè)詞的搭配 |
| colormap | 給每個(gè)單詞隨機(jī)分配顏色,若指定color_func,則忽略該方法 |
| random_state | 為每個(gè)單詞返回一個(gè)PIL顏色 |
其他部分函數(shù)
| 函數(shù) | 作用 |
|---|---|
| fit_words(frequencies) | 根據(jù)詞頻生成詞云 |
| generate(text) | 根據(jù)文本生成詞云 |
| generate_from_frequencies(frequencies[, …]) | 根據(jù)詞頻生成詞云 |
| generate_from_text(text) | 根據(jù)文本生成詞云 |
| process_text(text) | 將長(zhǎng)文本分詞并去除屏蔽詞(此處指英語(yǔ),中文分詞還是需要自己用別的庫(kù)先行實(shí)現(xiàn),使用上面的 fit_words(frequencies) ) |
| recolor([random_state, color_func, colormap]) | 對(duì)現(xiàn)有輸出重新著色。重新上色會(huì)比重新生成整個(gè)詞云快很多 |
| to_array() | 轉(zhuǎn)化為 numpy array |
| to_file(filename) | 輸出到文件 |
更多關(guān)于python詞云庫(kù)wordcloud的使用方法請(qǐng)查看下面的相關(guān)文章
相關(guān)文章
python 自動(dòng)化偷懶的四個(gè)實(shí)用操作
這篇文章主要介紹了python 自動(dòng)化偷懶的四個(gè)實(shí)用操作,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-04-04
pip安裝時(shí)ReadTimeoutError的解決方法
今天小編就為大家分享一篇pip安裝時(shí)ReadTimeoutError的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06
使用Python pandas讀取CSV文件應(yīng)該注意什么?
本文是給使用pandas的新手而寫,主要列出一些常見的問(wèn)題,根據(jù)筆者所踩過(guò)的坑,進(jìn)行歸納總結(jié),希望對(duì)讀者有所幫助,需要的朋友可以參考下2021-06-06
Pandas查詢數(shù)據(jù)df.query的使用
本文主要介紹了Pandas查詢數(shù)據(jù)df.query的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
pandas 將list切分后存入DataFrame中的實(shí)例
今天小編就為大家分享一篇pandas 將list切分后存入DataFrame中的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07
詳解APScheduler如何設(shè)置任務(wù)不并發(fā)
本文主要介紹了APScheduler如何設(shè)置任務(wù)不并發(fā),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07

