熊猫和Matplotlib-在线图上绘制散点图

时间:2020-08-08 09:45:13

标签: python pandas matplotlib

我正在构建交易机器人,目前正在回测。我有两个熊猫DataFrame,一个比另一个大得多。较长的时间包含x年的所有日期和所有索引。另一个数据框仅包含我购买或出售的日期和索引。

Long_frame = {'date':['2020-01-10', '2020-01-11', '2020-01-12', '2020-01-13', '2020-01-14', '2020-01-15'], 'index': [2, 4, 6, 8, 10, 20]}
Short_frame = {'date':['2020-01-10', '2020-01-11', '2020-01-13', '2020-01-15'], 'index': [2, 4, 8, 20]}

当我尝试将其绘制在同一张图上时,简短列表的线或散点最终在图的开头变得非常紧凑。我应该如何绘制它以获得有意义的图形?最佳图形将是只有一条线,一条长线,并在那条线上发生交易的点。

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以将日期用于x轴:

Long_frame = {'date':['2020-01-10', '2020-01-11', '2020-01-12', '2020-01-13', '2020-01-14', '2020-01-15'],'index': [2, 4, 6, 8, 10, 20]}
Short_frame = {'date':['2020-01-10', '2020-01-11', '2020-01-13', '2020-01-15'], 'index': [2, 4, 8, 20]}


import matplotlib.pyplot as plt

plt.plot(Long_frame['date'], Long_frame['index'])
plt.plot(Short_frame['date'], Short_frame['index'],'.', markersize=15)

交易日期点位于日期位置,并且两个图形均等分布