import pandas as pdimport numpy as npimport matplotlib.pyplot as pltdf = pd.read_excel(r'C:\Users\86187\Downloads\2022蓝桥江西省赛.xls')ff = df[df['学校名称'] == "江西理工大学"]plt.rcParams['font.sans-serif'] = ['SimHei']grouped = ff.groupby(['比赛科目', '奖项'])['准考证号'].agg('count').unstack()ax = grouped.plot.bar(figsize=(5, 3))for p in ax.containers: ax.bar_label(p, label_type='edge', fontsize=8)plt.show()如何调整三等奖和二等奖的位置
时间: 2023-08-11 15:06:07 浏览: 192
python数据分析与可视化 import pandas as pd import numpy as np import m
你可以在 `grouped` 变量上重新排列列的顺序,将二等奖和三等奖的列交换位置,然后再进行分组和绘图。具体代码如下:
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df = pd.read_excel(r'C:\Users\86187\Downloads\2022蓝桥江西省赛.xls')
ff = df[df['学校名称'] == "江西理工大学"]
plt.rcParams['font.sans-serif'] = ['SimHei']
grouped = ff.groupby(['比赛科目', '奖项'])['准考证号'].agg('count').unstack()
# 重新排列列的顺序
grouped = grouped[['一等奖', '三等奖', '二等奖']]
ax = grouped.plot.bar(figsize=(5, 3))
for p in ax.containers:
ax.bar_label(p, label_type='edge', fontsize=8)
plt.show()
```
这里使用了 `grouped[['一等奖', '三等奖', '二等奖']]` 将列的顺序重新排列。
阅读全文