python利用WordCloud模塊實(shí)現(xiàn)詞云繪制
初步認(rèn)識(shí)
wordcloud是詞云繪圖模塊,封裝了WordCloud詞云類,是詞云的基本載體。在新建一個(gè)詞云之后,通過(guò)generate裝載用以生成詞云的字符串,最后用to_file把詞云圖保存到文件中,例如
from wordcloud import WordCloud
w = WordCloud()
txt = "tinycool cool tiny Python WordCloud word cloud word not world"
w.generate(txt)
w.to_file("pywordcloud.png")
效果如下

基本參數(shù)
僅就這張圖像來(lái)說(shuō),我們能感受到的特性大概有
- 詞云圖的寬度、高度
- 背景顏色,文字顏色
- 字體
- 單詞長(zhǎng)度,單詞個(gè)數(shù)
這些特性可受到下列參數(shù)調(diào)控
| 參數(shù) | 說(shuō)明 | 備注 |
|---|---|---|
| font_path | 字體文件路徑 | otf或ttf文件 |
| width | 詞云寬度 | 默認(rèn)400 |
| height | 詞云高度 | 默認(rèn)200 |
| min_font_size | 最小文字尺寸 | 默認(rèn)4 |
| max_font_size | 最大文字尺寸 | 默認(rèn)為圖像高度 |
| relative_scaling | 詞頻對(duì)尺寸的影響 | 默認(rèn)"auto" |
| font_step | 字體步長(zhǎng) | 默認(rèn)1 |
| max_words | 最大單詞數(shù) | 默認(rèn)200 |
| min_word_length | 最短單詞長(zhǎng)度 | 默認(rèn)0 |
| background_color | 背景色 | 默認(rèn)"black" |
| mode | 顏色格式 | 默認(rèn)RGB |
| colormap | 顏色映射 | |
| repeat | 是否重復(fù)單詞 | 默認(rèn)False |
下面對(duì)這些參數(shù)稍作更改,并
# txt即本文前面所有文字,因?yàn)樘嗑筒粚懥?
txt = r'''
'''
dct = dict(width=600, height=300,
font_path = r"C:\Windows\Fonts\simhei.ttf",
min_font_size = 10,
max_font_size = 100,
max_words = 20,
min_word_length = 2,
background_color = "white",
colormap = "jet")
w = WordCloud(**dct)
w.generate(txt)
w.to_file("pywordcloud.png")
效果如下,由于最多只顯示20個(gè)單詞,而且尺寸最小是10,最大100,所以不太好看。

掩模參數(shù)
所謂掩模,就是詞云組成的圖案,主要由以下參數(shù)調(diào)控。
| 參數(shù) | 說(shuō)明 | 備注 |
|---|---|---|
| mask | 掩模數(shù)組 | 默認(rèn)None |
| contour_width | 掩模寬度 | 默認(rèn)為0 |
| contour_color | 掩模顏色 | 默認(rèn)"black" |
掩模數(shù)組由0和1構(gòu)成,詞云只在掩模數(shù)組為1的位置顯示。下面畫一個(gè)橢圓作為掩模數(shù)組,橢圓圓周的方程為

import numpy as np
y, x = np.indices([300,600])
delta = np.sqrt(280**2-(2*y-300)**2)
mask = (x<300+delta) & (x>300-delta)
mask = (1-mask)*254+1
w = WordCloud( mask = mask, contour_width=100,
font_path = r"C:\Windows\Fonts\simhei.ttf")
w.generate(txt)
w.to_file("pywordcloud.png")
效果如下

到此這篇關(guān)于python利用WordCloud模塊實(shí)現(xiàn)詞云繪制的文章就介紹到這了,更多相關(guān)python WordCloud內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python使用django搭建web開發(fā)環(huán)境
這篇文章主要為大家詳細(xì)介紹了Python使用django搭建web開發(fā)環(huán)境,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
使用python找出list列表中相同元素(指定元素)的所有索引
這篇文章主要給大家介紹了關(guān)于使用python找出list列表中相同元素(指定元素)的所有索引,在平時(shí)開發(fā)過(guò)程中經(jīng)常遇到需要在數(shù)據(jù)中獲取特定的元素索引的信息,需要的朋友可以參考下2023-08-08
Java實(shí)現(xiàn)的執(zhí)行python腳本工具類示例【使用jython.jar】
這篇文章主要介紹了Java實(shí)現(xiàn)的執(zhí)行python腳本工具類,結(jié)合實(shí)例形式分析了java使用jython.jar執(zhí)行Python腳本的具體操作技巧,需要的朋友可以參考下2018-03-03
Python解壓可迭代對(duì)象賦值給多個(gè)變量詳解
這篇文章主要為大家介紹了Python賦值多個(gè)變量,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2021-12-12
Python根據(jù)文件路徑獲取不帶后綴名的文件名的兩種方法
在 Python 中,你可以使用os模塊或pathlib模塊來(lái)根據(jù)文件路徑獲取文件名,這兩個(gè)模塊都提供了方便的方法來(lái)解析文件路徑,下面通過(guò)代碼示例為大家詳細(xì)介紹一下,需要的朋友可以參考下2025-10-10
Python?OpenCV實(shí)現(xiàn)3種濾鏡效果實(shí)例
opencv是一個(gè)很強(qiáng)大的庫(kù),支持多個(gè)編程語(yǔ)言,下面這篇文章主要給大家介紹了關(guān)于Python?OpenCV實(shí)現(xiàn)3種濾鏡效果的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04
python使用requests庫(kù)提交multipart/form-data請(qǐng)求的方法詳解
multipart/form-data的基礎(chǔ)是post請(qǐng)求,即基于post請(qǐng)求來(lái)實(shí)現(xiàn)的 ,下面這篇文章主要給大家介紹了關(guān)于python使用requests庫(kù)提交multipart/form-data請(qǐng)求的相關(guān)資料,需要的朋友可以參考下2023-01-01

