Pandas – 将多个时间序列的DataFrame绘制成一个单一的图形
在这篇文章中,我们将看到如何将多个时间序列Dataframe绘制成单一图表。
如果一个DataFrame中有多个时间序列,你仍然可以使用plot()方法来绘制所有时间序列的线形图。要将多个时间序列绘制成一个图,首先我们必须确保所有数据框架的索引是对齐的。因此,让我们举两个例子,一个是索引对齐的例子,另一个是在绘图前必须对齐所有DataFrames的索引的例子。
绘制具有相同日期时间索引的数据帧
第1步:导入库
第2步:导入数据
我们将绘制三只股票特斯拉、福特和通用汽车的开盘价,你可以从这里或yfinance库下载数据。
Tesla file:
输出:
Ford_stock:
输出:
GM_Stock:
输出:
第3步:现在绘制股票的公开价格图
输出:
用不同的日期时间索引绘制数据框架:
在第二个例子中,我们将采取苹果(AAPL)和微软(MSFT)不同时期的股票价格数据。我们在这里的第一个任务是重新索引任何一个数据框架,使其与另一个数据框架保持一致,然后我们可以将它们绘制在一个图中。
第1步:导入库
第2步:导入数据
输出:
msft file:
输出:
你可以清楚地看到,两个DataFrames的DateTime索引是不一样的,所以首先我们必须把它们对齐。当我们将msft的DateTime索引与所有的一样时,那么在2010-01-04到2012-01-02期间我们将有一些缺失的值,在绘制之前,去除缺失的值是非常重要的。
输出:
我们已经将两个DataFrame合并成一个DataFrame,现在我们可以简单地绘制它。
输出:
在某些情况下,我们不能失去数据,所以我们也可以在不去除缺失值的情况下绘图,同样的绘图会看起来像。