wordcoloud库


wordcloud库

wordcloud库基本介绍

概述:wordcloud是优秀的词云展示第三方库

wordcloud库的安装

pip install wordcloud

wordcloud库使用说明

基本使用

wordcloud库把词云当作一个WordCloud对象

  • wordcloud.WordCloud()代表一个文本对应的词云
  • 可以根据文本中词语出现的频率等参数绘制词云

常规方法

w = wordcloud.WordCloud()

方法 描述
w.generate(txt)

向WordCloud对象w中加载文本txt

w.generate("Python and WordCloud")

w.to_file(filename)

将词云输出为图像文件,.png或.jpg格式

w.to_file("outfile.png")

1 import wordcloud
2 c = wordcloud.WordCloud()               #1.配置对象参数
3 c.generate("wordcloud by Python")       #2.加载词云文本
4 c.to_file("Pywordcloud.png")            #3.输出词云文件

配置参数

 

参数 描述
width

指定词云对象生成图片的宽度,默认400像素

w = wordcloud.WordDloud(width = 600)

height

指定词云对象生成图片的高度,默认200像素

w = wordcloud.WordDloud(height = 400)

min_font_size

指定词云中字体的最小字号,默认4号

w = wordcloud.WordDloud(min_font_soze=10) 

max_font_size

指定词云中字体的最大字号,根据高度自动调节

w = wordcloud.WordDloud(max_dont_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.WordDloud(max_words=20)

stop_words

指定词云的排除词列表,即不显示的单词列表

w = wordcloud.WordDloud(stop_words={"Python"})

mask

指定词云形状,默认为长方形,需要引用imread()函数

from scipy.misc import imread

mk = imread("pic.png")

w = wordcloud.WordDloud(mask = mk)

background_color

指定词云图片的背景颜色,默认为黑色

w = wordcloud.WordDloud(background_color = "white")

 

 1 #GovRptWordCloudv1.py
 2 import jieba
 3 import wordcloud
 4 f = open("新时代中国特色社会主义.txt", "r", encoding="utf-8")
 5 
 6 t = f.read()
 7 f.close()
 8 ls = jieba.lcut(t)
 9 
10 txt = " ".join(ls)
11 w = wordcloud.WordCloud( \
12     width = 1000, height = 700,\
13     background_color = "white",
14     font_path = "msyh.ttc"    
15     )
16 w.generate(txt)
17 w.to_file("grwordcloud.png")
常规矩形词云
 1 #GovRptWordCloudv2.py
 2 import jieba
 3 import wordcloud
 4 from scipy.misc import imread
 5 mask = imread("chinamap.jpg")
 6 excludes = { }
 7 f = open("新时代中国特色社会主义.txt", "r", encoding="utf-8")
 8 t = f.read()
 9 f.close()
10 ls = jieba.lcut(t)
11 txt = " ".join(ls)
12 w = wordcloud.WordCloud(\
13     width = 1000, height = 700,\
14     background_color = "white",
15     font_path = "msyh.ttc", mask = mask
16     )
17 w.generate(txt)
18 w.to_file("grwordcloudm.png")
不规则图形词云