python - 如何为数据框中的每组数据创建带有标题的子图
问题描述
假设我有一个定义如下的数据框:
cat = ['games','games','home','home','home','food','food','food','food','food']
dates = ['2024-07-01','2021-31-1', '2021-04-1', '2021-05-1','2021-02-2', '2021-05-1','2021-01-2','2021-14-2','2021-03-3','2021-11-4']
nums = [137, 338, 52, 144, 100, 5, 72, 400, 100, 99]
df = pd.DataFrame({'cat':cat, 'dates':dates, 'nums':nums})
我想绘制每个cat
- 例如分别创建一个nums
与dates
for games
、home
和的图food
。
我通过做得到它df.groupby('cat').plot(x = 'date')
,这很有效,但我无法在每个子图上获得标题。或者有没有更简单的方法来实现这一点,并让每个情节标题都是名字cat
?
解决方案
您可以遍历组,这使您可以完全控制每个绘图的轴、标题等
import matplotlib.pyplot as plt
for key, gp in df.groupby('cat'):
gp.plot('dates')
plt.title(key)
推荐阅读
- javascript - js 树中的颜色显示不正确
- php - 此集合实例上不存在属性 [posts]
- sql - 为什么访问中的日期/时间语句不返回值?
- c# - 在 ASP.NET MVC 5 中出现以下错误:不显眼的客户端验证规则中的验证类型名称必须是唯一的。所需
- reactjs - Ant Design for React:显示/隐藏特定列
- html - 在剪辑路径形状的顶部显示卡片
- typescript - TypeScript 可重用函数参数类型
- php - Sentry + Laravel:如何记录已经捕获的异常?
- reactjs - 如果 JWT 令牌不正确,如何重定向到登录页面
- java - 为什么封装在函数中的简单检查的执行效率是直接检查的两倍?