下面的代码片段展示秀的收入增长但是这种格式的,我无法找到如何添加以下3家公司/下降了3年的时间:
1)替代或者看到只有12月份按3年(df.PublishedAtUtc.dt.month),或看到基于一年(df.PublishedAtUtc.dt.year非常坚固图表),我怎么看36或任何款项个月(我试过,没有运气不同参数)
https://i.imgur.com/beiO8w2.png
sums = df.groupby(['Company Name', df.Datetime.dt.month])['PaidTotal'].sum().reset_index(level=0)
for company in sums['Company Name'].unique():
sums[sums['Company Name'] == company]['PaidTotal'].plot();
只有数据样本 - 原来有上千行:
Company Name PaidTotal Datetime
585 CompanyA 218916.0 2016-10-14 10:51:07
586 CompanyB 430000.0 2016-01-23 11:05:08
591 CompanyB 546217.0 2016-09-26 14:20:00
592 CompanyC 73780.0 2016-12-07 07:52:01
593 CompanyA 132720.0 2017-10-04 16:14:10
595 CompanyC 52065.0 2017-11-12 14:32:40
585 CompanyA 234566.0 2017-10-14 10:51:07
586 CompanyB 252325.0 2017-01-23 11:05:08
591 CompanyB 546217.0 2018-09-26 14:20:00
592 CompanyC 745780.0 2018-12-07 07:52:01
593 CompanyA 1322320.0 2018-10-04 16:14:10
595 CompanyC 5432065.0 2018-11-12 14:32:40
它看起来像您使用的Datetime
对象来存储您的日期,这样你就可以使用Matplotlib的plt.plot_date()
功能记录here解决您的问题。
此函数假定要存储的日期/时间为datetime对象。所以,你必须通过xdate=True
(见下面的代码)指定。
要绘制任意范围的日期时间与他们的付出总计datetimes
对象totals
,使用这样的:
plt.plot_date(dates,totals,xdate=True)
plt.xlabel('date')
plt.ylabel('totals')