把上面那个图的横坐标翻转90度
时间: 2023-12-14 17:05:10 浏览: 31
要将上面的条形图的横坐标翻转 90 度,可以使用 `barh()` 函数绘制水平条形图。修改代码如下:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 创建 DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily'],
'Grade': [1, 2, 2, 3, 3],
'Internet Time': ['<1 hour', '1-2 hours', '2-3 hours', '3-4 hours', '>4 hours']}
df = pd.DataFrame(data)
# 按年级和上网时间段分组,并统计人数
grouped = df.groupby(['Grade', 'Internet Time'])['Name'].count()
# 重塑数据,以年级为行,上网时间段为列,人数为值
grouped = grouped.unstack()
# 绘制水平条形图
grouped.plot(kind='barh', stacked=True)
# 设置坐标轴标签和图例
plt.xlabel('Count')
plt.ylabel('Grade')
plt.legend(title='Internet Time', loc='lower right')
# 显示图形
plt.show()
```
这段代码与前面的代码相比,唯一的区别在于绘制条形图的函数从 `plot(kind='bar', stacked=True)` 改为了 `plot(kind='barh', stacked=True)`,并且横轴和纵轴的标签也交换了位置。