tmp = pd.pivot_table(data=sale_data, index='车类',columns='year', values='销量', aggfunc='sum', fill_value=0) cols=['#E0FFFF','#76EEC6','#66D88E','#66CDAA','#8FBC8F'] explode = [0.1, 0.1, 0.1, 0.1] plt.pie(sale_data[0,2:6], explode=explode, labels=tmp.index, colors=cols, autopct='%1.1f%%') plt.title('汽车车类各年度的销量') plt.show()
时间: 2023-12-26 09:04:26 浏览: 155
df.rank & pd.pivot_table & pd.read_excel & df添加行 &调整df行列顺序(reindex再理解)
这段代码中的`pd.pivot_table()`函数使用了pandas库来创建一个数据透视表,显示了每个汽车车类在不同年份的销售总量。接下来的代码使用了相同的颜色和数据索引来创建一个饼状图,但是在绘制饼状图时,使用了错误的数据源。`sale_data[0,2:6]`应该替换为`tmp.sum(axis=1)`。
因此,可以做出以下修改:
```
tmp = pd.pivot_table(data=sale_data, index='车类',columns='year', values='销量', aggfunc='sum', fill_value=0)
cols=['#E0FFFF','#76EEC6','#66D88E','#66CDAA','#8FBC8F']
explode = [0.1, 0.1, 0.1, 0.1]
plt.pie(tmp.sum(axis=1), explode=explode, labels=tmp.index, colors=cols, autopct='%1.1f%%')
plt.title('汽车车类各年度的销量')
plt.show()
```
这段代码中使用了正确的数据源,并且调用了`tmp.sum(axis=1)`来计算每个汽车车类在所有年份的销售总量。其他的代码部分与之前的修改一致,生成了一个正确的饼状图。
阅读全文