pyecharts双层饼图
时间: 2023-07-02 19:12:49 浏览: 186
可以使用Pyecharts库中的`Pie`和`Funnel`来实现双层饼图。具体步骤如下:
1. 导入必要的库和数据:
```python
from pyecharts import options as opts
from pyecharts.charts import Pie
data = [("类别1", 55), ("类别2", 40), ("类别3", 20), ("类别4", 80), ("类别5", 100)]
```
2. 创建`Pie`对象,并设置基本属性:
```python
pie = (
Pie()
.add("", data)
.set_global_opts(title_opts=opts.TitleOpts(title="双层饼图", subtitle="数据来源"))
.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
```
3. 将数据分组,创建`Funnel`对象,并设置属性:
```python
# 将数据按照数值从大到小排序,分为两组
data1 = sorted(data, key=lambda x: x[1], reverse=True)[:3]
data2 = sorted(data, key=lambda x: x[1], reverse=True)[3:]
funnel = (
Funnel()
.add("", data1, gap=0, tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{b}: {c}"))
.add("", data2, gap=0, tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{b}: {c}"))
.set_global_opts(title_opts=opts.TitleOpts(title="双层饼图", subtitle="数据来源"))
.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
)
```
4. 将`Pie`和`Funnel`对象合并,并渲染成HTML文件:
```python
# 将Pie和Funnel对象合并
pie.overlap(funnel)
# 渲染成HTML文件
pie.render("双层饼图.html")
```
运行上述代码,就可以生成一个带有两层饼图的HTML文件。其中,上面一层为标准的饼图,下面一层为漏斗图,两层数据可以不同。
阅读全文
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)