接下来,我们需要准备数据,数据应该包括销售月份、大类名称、销售金额这三个字段。假设数据已经准备好,并存储在名为data的DataFrame中,可以按以下方式绘制各大类商品销售金额的占比饼图:
时间: 2024-03-09 20:49:57 浏览: 128
好的,那么可以按照以下代码来绘制各大类商品销售金额的占比饼图:
```python
from pyecharts.charts import Pie
from pyecharts import options as opts
import pandas as pd
# 准备数据
data = pd.read_csv('data.csv')
# 按大类名称分组并计算销售金额总和
group_data = data.groupby('大类名称')['销售金额'].sum()
# 计算总销售金额
total = group_data.sum()
# 将数据转换为列表
data_list = []
for name, value in group_data.items():
data_list.append((name, round(value / total * 100, 2)))
# 绘制饼图
pie = (
Pie()
.add(
series_name="各大类商品销售金额占比",
data_pair=data_list,
radius=["30%", "60%"],
center=["50%", "50%"],
label_opts=opts.LabelOpts(
position="outside",
formatter="{b}: {c}万元 ({d}%)",
font_size=14,
font_weight="bold",
font_family="Microsoft YaHei",
color="#333",
),
)
.set_global_opts(
title_opts=opts.TitleOpts(
title="各大类商品销售金额占比",
subtitle="总销售金额:{}万元".format(total),
pos_left="50%",
pos_top="5%",
title_textstyle_opts=opts.TextStyleOpts(font_size=30),
),
tooltip_opts=opts.TooltipOpts(
trigger="item",
formatter="{a} <br/>{b}: {c}万元 ({d}%)",
),
legend_opts=opts.LegendOpts(
type_="scroll",
pos_left="20%",
orient="vertical",
item_width=20,
item_height=10,
),
)
)
# 渲染成HTML文件
pie.render("pie_chart.html")
```
这段代码会生成一个饼图,显示各大类商品销售金额的占比。可以通过浏览器打开生成的HTML文件查看结果。
阅读全文