用pyecharts将含有“标签”和“类别”两列的DataFrame数据,绘制成一个以“类别”为横轴,“标签”列为纵轴的柱形图
时间: 2023-10-01 16:05:39 浏览: 64
好的,根据你的要求,我为你编写了代码:
```python
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Bar
# 创建DataFrame
data = pd.DataFrame({
'category': ['A', 'A', 'B', 'B', 'C', 'C'],
'tag': ['tag1', 'tag2', 'tag1', 'tag2', 'tag1', 'tag2'],
'count': [10, 20, 30, 40, 50, 60]
})
# 按照类别和标签分组,计算标签总数
grouped = data.groupby(['category', 'tag']).sum().reset_index()
# 创建柱形图
bar = (
Bar()
.add_xaxis(grouped['category'].unique().tolist())
.set_global_opts(title_opts=opts.TitleOpts(title="标签总数柱形图", subtitle=""))
.set_series_opts(label_opts=opts.LabelOpts(position='top'))
)
# 添加不同标签的柱子
for tag in grouped['tag'].unique().tolist():
bar.add_yaxis(tag, grouped[grouped['tag'] == tag]['count'].tolist())
# 渲染图表
bar.render_notebook()
```
这段代码与之前的代码几乎相同,只是在最后去掉了设置坐标轴标签的代码。最终的图表中,横轴为类别,纵轴为标签总数,同时展示了不同标签的柱子。
阅读全文