[英]Use one graph for multiple timeseries dataframes pandas
我目前正在使用時間序列創建一個有關股票價格的熊貓項目。 我有一個在y軸上具有負值和正值的列股票收益。 我有最近5年的數據,並試圖在同一張圖中比較每年的月份,但是當我繪制它們時,它們沿日期分開,而不是重疊(下圖):
fig, ax = plt.subplots()
Monthly_Return2017.plot(ax=ax)
Monthly_Return2016.plot(ax=ax)
Monthly_Return2015.plot(ax=ax)
Monthly_Return2014.plot(ax=ax)
Monthly_Return2013.plot(ax=ax).axhline(y = 1, color = "black", lw = 2)
plt.show()
因此,我想讓它們在x軸上按月對1月至12月的比例分配。 無論如何,我可以這樣做將數據保留為時間序列。 這是三個數據幀的樣本。
Close
Date
2017-01-31 1.000000
2017-02-28 1.033158
2017-03-31 1.041128
2017-04-30 1.137012
2017-05-31 1.210934
2017-06-30 1.140489
2017-07-31 1.167811
2017-08-31 1.178893
2017-09-30 1.203717
2017-10-31 1.275920
2017-11-30 1.281906
2017-12-31 1.313270
Close
Date
2016-01-31 1.000000
2016-02-29 0.939188
2016-03-31 1.002692
2016-04-30 0.932781
2016-05-31 0.990268
2016-06-30 0.931557
2016-07-31 1.034780
2016-08-31 1.032438
2016-09-30 1.046221
2016-10-31 1.055979
2016-11-30 1.020311
2016-12-31 1.038859
Close
Date
2015-01-31 1.000000
2015-02-28 1.044676
2015-03-31 1.025219
2015-04-30 1.010808
2015-05-31 1.000970
2015-06-30 0.979148
2015-07-31 1.176855
2015-08-31 1.163010
2015-09-30 1.144519
2015-10-31 1.337128
2015-11-30 1.396929
2015-12-31 1.427554
任何幫助將不勝感激。
我只是創建兩個不同的數據框,而忽略繪圖的日期和時間序列。 就像是:
import pandas as pd
import matplotlib.pyplot as plt
Monthly_Return2017 = Monthly_Return2017.reset_index()
Monthly_Return2016 = Monthly_Return2016.reset_index()
fig, ax = plt.subplots()
Monthly_Return2017['Close'].plot(ax=ax)
Monthly_Return2016['Close'].plot(ax=ax)
然后,您可以玩xticks來放置月份。 有幫助嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.