python groupby 分组后画饼图
时间: 2023-08-27 11:05:10 浏览: 246
可以使用 pandas 库对数据进行分组,然后使用 matplotlib 库画出饼图。
首先,假设你有一个数据集,其中包含两列,一列是类别,另一列是数值。你可以使用 pandas 库的 groupby 方法对数据集进行分组,然后使用 sum 方法对每个组内的数值进行求和。
下面是一个示例代码:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 创建示例数据
data = {'category': ['A', 'A', 'B', 'B', 'B', 'C'], 'value': [1, 2, 3, 4, 5, 6]}
df = pd.DataFrame(data)
# 按类别分组,并对每个组内的数值求和
grouped = df.groupby('category')['value'].sum().reset_index()
# 绘制饼图
plt.pie(grouped['value'], labels=grouped['category'], autopct='%1.1f%%')
plt.axis('equal')
plt.show()
```
上面的代码将数据集按照 `category` 列进行分组,并对每个组内的 `value` 列进行求和。然后,使用 `plt.pie` 方法绘制饼图,其中 `grouped['value']` 列作为数据,`grouped['category']` 列作为标签。`autopct` 参数用于控制饼图上数值的显示方式。最后,使用 `plt.axis` 方法将饼图设置为等比例显示,并使用 `plt.show` 方法显示图形。
阅读全文