使用pyecharts做两组数据的堆叠柱状图,柱状图的顶部的数据标签值为两组数据加总之和。不需要新增一个柱子,我要的是在堆叠柱子上显示两组数据加总的和
时间: 2024-05-15 19:14:54 浏览: 47
以下是使用pyecharts制作堆叠柱状图的示例代码,其中添加了两组数据加总的和的数据标签:
```python
from pyecharts import options as opts
from pyecharts.charts import Bar
# 定义两组数据
data1 = [120, 200, 150, 80, 70]
data2 = [80, 150, 120, 100, 90]
# 计算两组数据加总的和
data_sum = [data1[i] + data2[i] for i in range(len(data1))]
# 创建堆叠柱状图
bar = Bar()
bar.add_xaxis(["A", "B", "C", "D", "E"])
bar.add_yaxis("Data1", data1, stack="stack1")
bar.add_yaxis("Data2", data2, stack="stack1")
bar.extend_axis(yaxis=opts.AxisOpts(name="Sum"))
bar.add_yaxis("Sum", data_sum, yaxis_index=1)
# 设置柱状图顶部的数据标签值为两组数据加总之和
bar.set_series_opts(
label_opts=opts.LabelOpts(
position="top",
formatter=opts.JsCode(
"function(params){return params.value[params.seriesIndex+2]}"
)
)
)
# 设置堆叠柱状图的样式
bar.set_global_opts(
title_opts=opts.TitleOpts(title="Stacked Bar"),
xaxis_opts=opts.AxisOpts(name="Category"),
yaxis_opts=opts.AxisOpts(name="Value"),
legend_opts=opts.LegendOpts(pos_left="center"),
)
# 渲染图表并保存为HTML文件
bar.render("stacked_bar.html")
```
运行以上代码后,会生成一个名为`stacked_bar.html`的HTML文件,打开该文件即可查看生成的堆叠柱状图。其中,柱状图顶部的数据标签值为两组数据加总之和。
阅读全文