WordCloud

github:

​https://github.com/amueller/word_cloud​

WordCloudAPI

 

wordcloud.WordCloud(
font_path=None, # 字体路径,英文不用设置路径,中文需要,否则无法正确显示图形
width=400, # 默认宽度
height=200, # 默认高度
margin=2, # 边缘
ranks_only=None,
prefer_horizontal=0.9,
mask=None, # 背景图形,如果想根据图片绘制,则需要设置
scale=1,
color_func=None,
max_words=200, # 最多显示的词汇量
min_font_size=4, # 最小字号
stopwords=None, # 停止词设置,修正词云图时需要设置
random_state=None,
background_color='black', # 背景颜色设置,可以为具体颜色,比如white或者16进制数值
max_font_size=None, # 最大字号
font_step=1,
mode='RGB',
relative_scaling='auto',
regexp=None,
collocations=True,
colormap='viridis', # matplotlib 色图,可更改名称进而更改整体风格
normalize_plurals=True,
contour_width=0,
contour_color='black',
repeat=False)

 

举例

比如更换背景颜色和整体风格等

新建文件definition.py

import os
from os import path
from wordcloud import WordCloud
from matplotlib import pyplot as plt
# 获取当前文件路径
d = path.dirname(__file__) if "__file__" in locals() else os.getcwd()
# 获取文本text
text = open(path.join(d,'aobama.txt')).read()
# 生成词云
#scale=2缩放2倍
#max_font_size = 100 最多显示词汇量100
#background_color='red' 背景颜色 红色
#colormap='Blues' 色图,可更改名称进而更改整体风格
wc = WordCloud(scale=2,max_font_size = 100,background_color='red',colormap='Blues')
wc.generate_from_text(text)
# 显示图像
plt.imshow(wc,interpolation='bilinear')
plt.axis('off')
plt.tight_layout()
#存储图像
wc.to_file('aobama.png')
# or
# plt.savefig('1900_basic.png',dpi=200)
plt.show()

然后在同级目录下新建aobama.txt

里面是词云的数据源,只能是英文,这里以奥巴马的演讲为例。

运行效果

根据WordCloud的API参数来自定义词云_python