Python数据分析及可视化实例之词云(9)

Python数据分析及可视化实例之词云(9)

系列文章总目录:Python数据分析及可视化实例目录


安装步骤:

敲黑板~~~~中文显示按此操作,英文可以无视:

1、准备好一个中文字体,如 simhei.ttf;

2、将其复制到wordcloud安装根目录中;

3、在 wordcloud.py 中修改 FONT_PATH 为相应字体。

当然,你也可以在实例化的时候手动制定路径,上面方法一劳永逸。


# WordCloud类

class WordCloud(object):
 def __init__(self, font_path=None, width=400, height=200, margin=2,
                 ranks_only=None, prefer_horizontal=.9, mask=None, scale=1,
                 color_func=None, max_words=200, min_font_size=4,
                 stopwords=None, random_state=None, background_color='black',
                 max_font_size=None, font_step=1, mode="RGB",
                 relative_scaling=.5, regexp=None, collocations=True,
                 colormap=None, normalize_plurals=True)

.......


# 关键参数含义
width : int (default=400)

    画布宽度

height : int (default=200)

    画布高度

ranks_only : boolean (default=False)

    是否只用词频排序而不是实际词频统计值,默认 False

prefer_horizontal : float (default=0.90)

    词语水平出现的频率,默认 0.9 (即垂直出现频率为 0.1 )

mask : nd-array or None (default=None)

    如果参数为空,则使用二维遮罩绘制词云。如果 mask 非空,设置的宽高值将被忽略,遮罩形状被 mask 取代。除全白(#FFFFFF)的部分将不会绘制,其余部分会用于绘制词云。

scale : float (default=1)

    计算与绘制图像间的比例。对于较大的词云图像,使用比例而非较大的画布会显著提升绘图速度,但是可能会造成词语间的粗糙拟合。

max_words : number (default=200)

    词语的最大数量

stopwords : set of strings

    停用词

max_font_size : int or None (default=None)

    最大词的最大字号;如果不指定,则为图像高度。

# 其他参数自行测试理解


举个例子:

from collections import Counter # 统计词频
from wordcloud import WordCloud, STOPWORDS  #生成词云、通用词
import matplotlib.pyplot as plt  # 在线显示
data = [open('红楼梦.txt','r',encoding='utf-8').read()]
# print(data[:10])
wc = WordCounter(data)  # 基于Counter自定义的子类(留作业:结巴分词、停用词)
wordcloud = WordCloud(background_color="white",width=600, height=400, margin=5).fit_words(dict_fre)
plt.imshow(wordcloud)
plt.axis("off")
plt.show()


显示效果



胶水语言博大精深,

本主只得一二为新人带路:

Python数据分析及可视化实例目录


最后,别只收藏不关注哈

编辑于 2017-10-13

文章被以下专栏收录