我有一个DataFrame,看起来像这样:
date organization percent
85 2018-10-01 org1 0.350875
88 2018-10-02 org1 0.341221
... ... ... ...
3961 2018-10-01 org2 0.292511
3964 2018-10-02 org2 0.418349
我需要在同一图中绘制每个组织的时间序列。
我首先尝试对散点图使用最佳拟合线,然后对sns.lmplot和sns.regplot进行尝试,但我似乎只能将所有组织绘制在一起。然后,我在Pandas: plot multiple time series DataFrame into a single plot处找到了这个答案,但是我一直在努力复制格式。我该怎么做呢?谢谢!
答案 0 :(得分:-1)
这是一种方法:
import matplotlib.dates as mdates
grouped_df = df.groupby('organization')
fig, ax = plt.subplots()
for key, item in grouped_df:
plt.plot_date(item['date'], item['percent'], '-', label=str(key))
ax.xaxis.set_major_formatter(mdates.DateFormatter('%d-%m-%Y'))
ax.xaxis.set_major_locator(mdates.DayLocator(interval=1))
plt.legend()
plt.show()