pyecharts实现词云图html和png
⽬标是使⽤python程序读取词、词频⽣成⼀个词云图,结果输出可以选择html格式,也可以选择png
pyecharts简介
官⽅的介绍也很简单,简单来说就是说是应⼤数据⽽⽣的可视化库
使⽤
使⽤上可以先下载⽰例代码,看上去多其实每个⽬录都是⼀个图形,使⽤上感觉和JS插件也差不多,挺简单的。
要从这么多图形⾥到⾃⼰需要的⽰例也是要花点功夫的,^^
词云⽰例
数据格式:
pyecharts需要的数据格式为⼆维数组:
[['的' '232'],['情感' '119'],['和' '42']]
def create_wcloud(self):
(
WordCloud()
.add(series_name="热词云图",
# 添加数据
data_pair=self.data,
# 字间隙
word_gap=5,
# 调整字⼤⼩范围
word_size_range=[15, 80],
shape="cursive"
# 选择背景图,也可以不加该参数,使⽤默认背景
# mask_image='timg.jpg'
)
.set_global_opts(
title_opts=opts.TitleOpts(
title="热词云图", title_textstyle_opts=opts.TextStyleOpts(font_size=23)
),
tooltip_opts=opts.TooltipOpts(is_show=True),
)
# 输出为html格式
.render("testbasic.html")
)
⽣成图⽚
pyecharts⽣成图⽚需要安装 snapshot-selenium 或者 snapshot-phantomjs。⽽使⽤snapshot-selenium需要安装浏览器的插件,否则会报错。
所以⽣成图⽚的⽅案我们使⽤wordcloud。效果也不错
数据格式:
wordcloud需要的词频数据格式是字典,如下:
textstylemydata {'的': 232, '情感': 119, '和': 42, '分析': 41, '⽅法': 36}
wc = WordCloud(font_path='C:\\windows\\Fonts\\f', background_color='White', max_words=50)
plt.imshow(wc)
plt.axis("off")  # 不显⽰坐标轴
plt.show()
<_file('Wordcloud.png')  # 保存的图⽚命名为Wordcloud.pn