Python时间序列图表

时间:2012-05-14 15:46:18

标签: python linux graphing

我有一个需要图形数据的项目(使用Python)。 rrdtool似乎几乎正是我所需要的 - 除了它只支持1秒的分辨率,而且我的数据点更加接近。

GNUPlot看起来像野兽。我还没有挖掘它,但是粗略地看一眼,它似乎更适合于绘制表达式而不是快速学习的东西。

是否有另一种(希望相对容易使用)图形系统可以定制或轻松适应图形时间序列?如果没有比GNUplot更好的东西了,我会开始深入研究它 - 我只是想确定没有其他我应该考虑的事情。

2 个答案:

答案 0 :(得分:5)

我之前使用过PyX。当我需要绘制各种数据时,它很适合我的目的。

还有matplotlib,这是一个非常受欢迎的Python绘图库。

答案 1 :(得分:2)

您没有完全指定您要查找的内容,但这里有一个快速剪切和粘贴的示例,其中显示了matplotlib的一些绘图功能。该示例还将图像保存为png和pdf(分别为栅格化和矢量化):

import numpy as np
import pylab as plt

# Create some sample "time-series" data
N = 200
T = np.linspace(0, 5, N)
Y1 = T**2 - T*np.cos(T*5) + np.random.random(N)
Y2 = T**2 - T*np.sin(T*5) + np.random.random(N)

pargs = {"lw":5, "alpha":.6}

plt.plot(T,Y1, 'r',**pargs)
plt.plot(T,Y2, 'b', **pargs)

skip = 30
plt.scatter(T[::skip],Y2[::skip], color='k', s=200, alpha=.6)

plt.xlabel("time")
plt.ylabel("money")
plt.axis('tight')

# Save as a png and a pdf
plt.savefig("example.png")
plt.savefig("example.pdf")

plt.show()

enter image description here