pyecharts 生成词云图,怎么样插入一张背景图
时间: 2023-06-23 08:55:39 浏览: 127
在使用 pyecharts 生成词云图时,可以通过 `WordCloud` 类的 `add` 方法添加背景图片,具体步骤如下:
1. 导入必要的模块和数据
```python
from pyecharts.charts import WordCloud
from pyecharts import options as opts
from pyecharts.globals import SymbolType
# 词云图数据
words = [
("Python", 10000),
("Java", 6181),
("C++", 4386),
("C", 4055),
("Go", 2467),
("JavaScript", 2244),
("SQL", 1898),
("PHP", 1464),
("Swift", 1247),
("R", 1000),
]
# 背景图片路径
bg_image = "background.png"
```
2. 创建 `WordCloud` 对象并添加数据
```python
wc = (
WordCloud()
.add("", words, word_size_range=[20, 100], shape=SymbolType.DIAMOND)
.set_global_opts(title_opts=opts.TitleOpts(title="词云图示例"))
)
```
3. 添加背景图片
```python
wc.add("", [bg_image],
mask_image=bg_image,
shape=SymbolType.DIAMOND,
is_mask_clip=True,
is_draw_out_of_bound=False)
```
完整代码如下:
```python
from pyecharts.charts import WordCloud
from pyecharts import options as opts
from pyecharts.globals import SymbolType
# 词云图数据
words = [
("Python", 10000),
("Java", 6181),
("C++", 4386),
("C", 4055),
("Go", 2467),
("JavaScript", 2244),
("SQL", 1898),
("PHP", 1464),
("Swift", 1247),
("R", 1000),
]
# 背景图片路径
bg_image = "background.png"
wc = (
WordCloud()
.add("", words, word_size_range=[20, 100], shape=SymbolType.DIAMOND)
.set_global_opts(title_opts=opts.TitleOpts(title="词云图示例"))
)
wc.add("", [bg_image],
mask_image=bg_image,
shape=SymbolType.DIAMOND,
is_mask_clip=True,
is_draw_out_of_bound=False)
wc.render("wordcloud_with_background.html")
```
其中,`add` 方法的第一个参数为空字符串,表示不添加额外的数据系列,只添加背景图片。`mask_image` 参数指定了背景图片路径,`is_mask_clip` 参数表示是否裁剪词云图以适应背景图片,`is_draw_out_of_bound` 参数表示是否绘制超出背景图片范围的词汇。
阅读全文