我有2个Pandas系列,每个系列都有DateTimeIndex的索引和其他索引所不具有的值。
a =
values
2018-01-20 01:58:15 1000
2018-01-20 01:58:20 1005
2018-01-20 01:58:25 1010
2018-01-20 01:58:45 1030
2018-01-20 01:58:50 1040
b =
values
2018-01-20 01:58:30 1015
2018-01-20 01:58:35 1020
2018-01-20 01:58:40 1025
并且我想使用matplotlib在同一张图上绘制每个系列的不同颜色标记。
例如
plt.plot(xs, a.values)
plt.plot(xs, b.values)
(其中xs是组合索引)
做到这一点的最好/最优雅的方法是什么?
答案 0 :(得分:1)
您可以遍历一系列清单,并绘制每个清单。颜色将自动分配给每个系列。
import matplotlib.pyplot as plt
for data in [a,b]:
# make sure the index is a datetime index
data.index = pd.to_datetime(data.index)
plt.scatter(data.index, data['values'])
# Set your x axis to be limited to your date ranges
plt.xlim(min(np.concatenate([a.index.values, b.index.values])),
max(np.concatenate([a.index.values, b.index.values])))
# Rotate the x ticklabels
plt.xticks(rotation=90)
plt.tight_layout()
plt.show()
答案 1 :(得分:0)
import matplotlib.pyplot as plt
plt.plot(a.index, a.values, b.index, b.values)