Python绘制时间序列并强调其中的一部分

时间:2016-03-08 06:22:57

标签: python python-2.7 matplotlib

我想在Python 2.7中绘制一些数据的时间序列(x轴为时间,y轴为某些任意数据)。

我需要另一种颜色\粗线\垂直边框的一部分情节,以强调这是我希望人们注意的情节的一部分。

我使用了matplotlib作为情节,我很乐意继续使用它,但其他想法也很好。

我尝试了这个draw with matplotlib,但这只告诉我如何绘制一般我试过这个colors in matplotlib但是这允许给不同的图形线赋予不同的颜色,我需要强调它的一部分line(数据集的一部分)

1 个答案:

答案 0 :(得分:2)

一种方法是第二次绘制突出显示的部分,如下所示:

import matplotlib
import matplotlib.pyplot as plt
from datetime import datetime

x = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
y = [1.2, 1.5, 2.1, 5.7, 8.3, 10.5, 8.5, 7.3, 9.0, 15.3]

bold = slice(3, 6)

fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.set_xlabel('Time')
ax.set_ylabel('Data')
plt.setp(ax.get_xticklabels(), size=8)
ax.plot(x, y, 'b-', linewidth=2)
ax.plot(x[bold], y[bold], 'y-', linewidth=5)
ax.scatter(x, y)
ax.scatter(x[bold], y[bold], edgecolors='y', linewidths=5)
plt.grid()
plt.show()

这会给你:

Matplot lib screenshot