Python绘制词云图之可视化神器pyecharts

程一诺
程一诺
发布时间:2026-10-15 | 4人浏览过
原创

本文介绍如何使用Python库pyecharts绘制词云图。通过调整shape参数可改变轮廓,支持自定义文字样式。文章提供了从基础数据输入到结合jieba进行智能分词的一键生成案例,帮助读者快速掌握词云可视化的核心技巧。

词云图

词云图的概念已广为人知,它通过统计文本中词汇的出现频率,并以可视化方式呈现,帮助读者迅速把握主题概要。

词云图系列模板

固定模式词云图

通过修改相关参数,可以调整词云的轮廓形状。这种方式最为便捷,无需额外寻找底图,只需设置参数即可实现。

shape参数用于定义词云轮廓,可选值包括’circle’, ‘cardioid’, ‘diamond’, ‘triangleforward’, ‘triangle’, ‘pentagon’, ‘star’。

import pyecharts.options as opts
from pyecharts.charts import WordCloud
#省略部分数据
data = [
("生活资源", "999"),
("供热管理", "888"),
("供气质量", "777"),
("生活用水管理", "688"),
("一次供水问题", "588"),

]
(
WordCloud()
.add(series_name="热点分析", data_pair=data, word_size_range=[6, 66])
.set_global_opts(
title_opts=opts.TitleOpts(
title="热点分析", title_textstyle_opts=opts.TextStyleOpts(font_size=23)
),
tooltip_opts=opts.TooltipOpts(is_show=True),
)
.render("词云图.html")
)

自定义文字样式

from pyecharts import options as opts
from pyecharts.charts import WordCloud
words = [
("花鸟市场", 1446),
("汽车", 928),

]
c = (
WordCloud()
.add(
"",
words,
word_size_range=[20, 100],
textstyle_opts=opts.TextStyleOpts(font_family="cursive"),
)
.set_global_opts(title_opts=opts.TitleOpts(title="WordCloud-自定义文字样式"))
.render("自定义文字样式.html")
)

一键化词云案例

只需输入文本存储路径,即可一键生成词云图。

pyecharts需要填写数据,因此首要步骤是分词。此前曾介绍过一个智能分词程序,只需将文本放入即可处理,现将该程序分享如下。

from pyecharts import options as opts
from pyecharts.charts import WordCloud
from pyecharts.globals import SymbolType
import jieba # jieba用于分词,中文字典及其强大
def main():
try:
print("C:\\Users\\48125\\Desktop\\")
title = input("请输入文本文件的路径及名称(注意不要写错了!):")
Open(title)
print("\n分词完毕!")
print('''\n\n\t 一键词云算法生成器
\t1--生成一词组的词云图
\t2--生成二词组的词云图
\t3--生成三词组的词云图
\t4--生成四词组的词云图
\t5--生成大于1词组的词云图(研究常用)
\t6--生成全部词组的词云图(包含所有类型的词组)
''')
num = int(input("请输入本次展示的词语数量(最好不超过100):"))
data = sort()[:num]
Str = input("请输入这个词云图的标题:")
print("词云图已经生成完毕,请查收!")
print("感谢您对本程序的使用,欢迎下次光临!!")
c = (
WordCloud()
.add(
"",
data, # 数据集
word_size_range=[20, 100], # 单词字体大小范围
shape=SymbolType.DIAMOND) # 词云图轮廓,有以下的轮廓选择,但是对于这个版本的好像只有在提示里面选
# circl,cardioid,diamond,triangle-forward,triangle,start,pentagon
.set_global_opts(title_opts=opts.TitleOpts(title="{}".format(Str)),
toolbox_opts=opts.ToolboxOpts()) # 工具选项
.render("{}词云制作{}词组.html".format(title, choice))
)
return c
except:
print("无法找到,请检查你的输入!")
if __name__ == "__main__":
main()

至此,关于Python绘制词云图及pyecharts可视化工具的介绍结束。如需了解更多Python与pyecharts相关内容,请查阅本站往期文章或继续浏览后续文章,感谢支持。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表