Python pyecharts绘制词云图

本文介绍了如何使用pyecharts的WordCloud.add()方法来绘制词云图,详细解析了方法参数,包括形状设置、字符间隔和旋转角度,并给出了以'diamond'为轮廓的词云图示例代码。

一、pyecharts绘制词云图WordCloud.add()方法简介

WordCloud.add()方法简介
add(name,attr,value,
shape="circle",
word_gap=20,
word_size_range=None,
rotate_step=45)
name str 图例名称
attr list 属性名称
value list 属性所对应的值
shape 词云图轮廓 对应属性可选'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow'
word_gap int 字符间隔默认为20
word_size_range 字符范围默认为[12,60]
rotate_step int 旋转角度默认为45

二、绘制词云图对应轮廓按diamond显示

复制代码

name = [
    'Sam S Club', 'Macys', 'Amy Schumer', 'Jurassic World', 'Charter Communications',
    'Chick Fil A', 'Planet Fitness', 'Pitch Perfect', 'Express', 'Home', 'Johnny Depp',
    'Lena Dunham', 'Lewis Hamilton', 'KXAN', 'Mary Ellen Mark', 'Farrah Abraham',
    'Rita Ora', 'Serena Williams', 'NCAA baseball tournament', 'Point Break']
value = [
    10000, 6181, 4386, 4055, 2467, 2244, 1898, 1484, 1112,
    965, 847, 582, 555, 550, 462, 366, 360, 282, 273, 265]
wordcloud = WordCloud(width=1300, height=620)
wordcloud.add("我爱新中国", name, value, word_size_range=[30, 60])
page.add(wordcloud)

wordcloud2 = WordCloud(width=1300, height=620)
wordcloud2.add("", name, value, word_size_range=[30, 100],
              shape='diamond',word_gap=60)

复制代码

 三、对应完整代码如下所示

复制代码

from pyecharts import Page
from pyecharts import WordCloud
page = Page()
#词云(词云图)
'''
WordCloud.add()方法简介
     add(name,attr,value,
     shape="circle",
     word_gap=20,
     word_size_range=None,
     rotate_step=45)
     name str 图例名称
     attr list 属性名称
     value list  属性所对应的值
     shape 词云图轮廓 对应属性可选'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow'
     word_gap int 字符间隔默认为20
     word_size_range 字符范围默认为[12,60]
     rotate_step int 旋转角度默认为45
'''
name = [
    'Sam S Club', 'Macys', 'Amy Schumer', 'Jurassic World', 'Charter Communications',
    'Chick Fil A', 'Planet Fitness', 'Pitch Perfect', 'Express', 'Home', 'Johnny Depp',
    'Lena Dunham', 'Lewis Hamilton', 'KXAN', 'Mary Ellen Mark', 'Farrah Abraham',
    'Rita Ora', 'Serena Williams', 'NCAA baseball tournament', 'Point Break']
value = [
    10000, 6181, 4386, 4055, 2467, 2244, 1898, 1484, 1112,
    965, 847, 582, 555, 550, 462, 366, 360, 282, 273, 265]
wordcloud = WordCloud(width=1300, height=620)
wordcloud.add("我爱新中国", name, value, word_size_range=[30, 60])
page.add(wordcloud)

wordcloud2 = WordCloud(width=1300, height=620)
wordcloud2.add("", name, value, word_size_range=[30, 100],
              shape='diamond',word_gap=60)
page.add(wordcloud2)
page.render()

复制代码

### 使用 PyEcharts 库在 Python绘制词云图 以下是基于 PyECharts 的示例代码,用于创建一个简单的词云图: ```python from pyecharts.charts import WordCloud from pyecharts import options as opts # 准备数据:列表形式 [(word, frequency), ...] data = [ ("Python", 100), ("Java", 80), ("C++", 70), ("JavaScript", 90), ("Go", 60), ("Ruby", 50), ("Swift", 40), ("Kotlin", 30), ("PHP", 20), ("Rust", 10) ] # 创建词云图实例 wordcloud = WordCloud() # 添加数据并设置全局选项 wordcloud.add( series_name="编程语言热度", data_pair=data, word_size_range=[20, 100], # 设置字体大小范围 shape="circle" # 可选形状:"circle", "cardioid", "diamond", etc. ) # 配置图表显示效果 wordcloud.set_global_opts(title_opts=opts.TitleOpts(title="词云图示例")) # 渲染到 HTML 文件 wordcloud.render("word_cloud_example.html") ``` #### 参数说明 - `series_name` 是系列名称,通常用于标记图表的数据集[^1]。 - `data_pair` 表示输入的词频数据,格式为 `(单词, 频率)` 列表[^2]。 - `word_size_range` 定义了词云中最小和最大字号之间的范围[^1]。 - `shape` 控制词云的整体布局形状,支持多种预定义图形如圆形 (`circle`) 或心形 (`cardioid`)[^3]。 运行此脚本后会生成名为 `word_cloud_example.html` 的文件,在浏览器打开即可查看生成的词云图。 #### 数据准备注意事项 如果需要处理中文文本,则可能涉及分词操作。可以借助第三方库 Jieba 进行中文分词,并统计词语出现次数作为频率值[^3]。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值