049 模組6-wordcloud庫的使用
阿新 • • 發佈:2020-12-13
目錄
一、wordcloud庫基本介紹
1.1 wordcloud庫概述
wordcloud是優秀的詞雲展示第三方庫
- 詞雲以詞語為基本單位,更加直觀和藝術的展示文字
1.2 wordcloud庫的安裝
pip install wordcloud
(cmd命令列)
二、wordcloud庫使用說明
2.1 wordcloud庫基本使用
wordcloud庫把詞雲當作一個WordCloud物件
- wordcloud.WordCloud()代表一個文字對應的詞雲
- 可以根據文字中詞語出現的頻率等引數繪製詞雲
- 繪製詞雲的形狀、尺寸和顏色都可以設定
2.2 wordcloud庫常規方法
w = wordcloud.WordCloud()
- 以WordCloud物件為基礎
- 配置引數、載入文字、輸出檔案
方法 | 描述 |
---|---|
w.generate(txt) | 向WordCloud物件w中載入文字txt,w.generate("Python and WordCloud") |
w.to_file(filename) | 將詞雲輸出為影象檔案,.png或.jpg?x-oss-process=style/watermark格式,w.to_file("outfile.png") |
- 步驟1:配置物件引數
- 步驟2:載入詞雲文字
- 步驟3:輸出詞雲檔案
import wordcloud
w = wordcloud.WordCloud()
w.generate("Python and WordCloud")
c.to_file("pywordcloud.png")
2.3 配置物件引數
w = wordcloud.WordCloud(<引數>)
引數 | 描述 |
---|---|
width | 指定詞雲物件生成圖片的寬度,預設400畫素 |
height | 指定詞雲物件生成圖片的高度,預設200畫素 |
min_font_size | 指定詞雲中字型的最小字號,預設4號 |
max_font_size | 指定詞雲中字型的最大字號,根據高度自動調節 |
font_step | 指定詞雲中字型字號的步進間隔,預設為1 |
font_path | 指定字型檔案的路徑,預設None |
max_words | 指定詞雲顯示的最大單詞數量,預設200 |
stop_words | 指定詞雲的排除詞列表,即不顯示的單詞列表 |
mask | 指定詞雲形狀,預設為長方形,需要引用imread()函式 |
background_color | 指定詞雲圖片的背景顏色,預設為黑色 |
# mask
from imageio import imread
mk=imread("pic.png")
w=wordcloud.WordCloud(mask=mk)
2.4 wordcloud應用例項
import wordcloud
txt = "life is short, you need python"
w = wordcloud.WordCloud(background_color="white")
w.generate(txt)
w.to_file("pywcloud.png")
中文需要先分詞並組成空格分隔字串
import jieba
import wordcloud
txt = "Nick 是上海虹橋最帥的男人,沒有之一,因為他就是最帥的"
w = wordcloud.WordCloud( width=1000,\
font_path="/Library/Fonts/Heiti.ttc",height=700)
w.generate(" ".join(jieba.lcut(txt)))
w.to_file("pywcloud.png")
import jieba
import wordcloud
txt = "Nick 是上海虹橋最帥的男人,沒有之一,因為他就是最帥的"
w = wordcloud.WordCloud( width=1000,\
font_path="/Library/Fonts/Heiti.ttc",height=700)
w.generate(" ".join(jieba.lcut(txt)))
w.to_file("pywcloud.png")
Building prefix dict from the default dictionary ...
Loading model from cache /var/folders/mh/krrg51957cqgl0rhgnwyylvc0000gn/T/jieba.cache
Loading model cost 1.047 seconds.
Prefix dict has been built succesfully.
<wordcloud.wordcloud.WordCloud at 0x1150979e8>