目录
- Wordcloud库常规方法
- 应用实例
wordcloud是优秀的词云展示第三方库,需要用pip安装,它可以根据文本中词语出现的频率等参数绘制词云,而且词云的绘制形状、尺寸和颜色都可以设定。
Wordcloud库常规方法
wordcloud.WordCloud()代表一个文本对应的词云。
首先指定对象:w = wordcloud.WordCloud() #注意大小写一定要正确
其中括号中可以填参数进行设置
参数 | 描述 |
width | 指定词云对象生成图片的宽度,默认400像素 >>>w=wordcloud.WordCloud(width=600) |
height | 指定词云对象生成图片的高度,默认200像素 >>>w=wordcloud.WordCloud(height=400) |
min_font_size | 指定词云中字体的最小字号,默认4号 >>>w=wordcloud.WordCloud(min_font_size=10) |
max_font_size | 指定词云中字体的最大字号,根据高度自动调节 >>>w=wordcloud.WordCloud(max_font_size=20) |
font_step | 指定词云中字体字号的步进间隔,默认为1 >>>w=wordcloud.WordCloud(font_step=2) |
font_path | 指定字体文件的路径,默认None >>>w=wordcloud.WordCloud(font_path=“msyh.ttc”) |
max_words | 指定词云显示的最大单词数量,默认200 >>>w=wordcloud.WordCloud(max_words=20) |
stop_words | 指定词云的排除词列表,即不显示的单词列表 >>>w=wordcloud.WordCloud(stop_words={“Python”}) |
mask | 指定词云形状,默认为长方形,需要引用imread()函数 >>>from scipy.misc import imread >>>mk=imread(“pic.png”) >>>w=wordcloud.WordCloud(mask=mk) |
background_color | 指定词云图片的背景颜色,默认为黑色 >>>w=wordcloud.WordCloud(background_color=“white”) |
具体使用方法还是简单的,我大致分为三步。
1 指定对象
2 加载txt文本文件
3 图像的输出
方法 | 描述 |
w.generate(txt) | 向WordCloud对象w中加载文本txt >>>w.generate(“Python and WordCloud”) |
w.to_file(filename) | 将词云输出为图像文件,.png或.jpg格式 >>>w.to_file(“outfile.png”) |
当然这只是总的步骤,中间还有许多的参数需要设置。英文的要简单点,因为每个单词都有空格可以区分。那么中文就需要导入jieba库进行分词后才能统计。jieba库使用传送门——>jieba库使用
应用实例
先来个英文的,上代码(效果我现在没法弄出来,因为我的这个wordcloud打死安装不下来,真是奇了怪了。。
现在我解决了这个问题了,各位参考我写的三方库安装问题解决——>python第三方库的安装注意:为了避免你们再次掉坑,py文件名不能用wordcloud,否则存在wordcloud导不进去的情况!!!)
import wordcloud
txt = "life is short, you need python"
w = wordcloud.WordCloud( \
background_color = "white")
w.generate(txt)
w.to_file("picture/pywcloud.png")
效果如图
再来个中文的,上菜。
import jieba
import wordcloud
f = open("word frequency/threekingdoms.txt", "r", encoding="utf-8")
t = f.read()
f.close()
ls = jieba.lcut(t)
txt = " ".join(ls)
w = wordcloud.WordCloud( \
width = 1000, height = 700,\
background_color = "white",
font_path = "msyh.ttc"
)
w.generate(txt)
w.to_file("picture/grwordcloud.png")
效果如图