我刚才用python和matplotlib比较两个函数的输出。结果非常简单,因为使用matplotlib进行绘图非常简单:我只是绘制了两个具有不同标记的数组。一块蛋糕。
现在我发现自己遇到了同样的问题,但现在我有很多曲线要比较。我最初尝试使用不同的颜色和标记绘制所有内容。这并不满足我,因为每条曲线的范围并不完全相同。除此之外,我很快就用尽了不同的颜色和标记(RGBCMYK,之后,自定义颜色与之前的颜色相似)。
我还尝试对每对曲线进行子绘图,获得一个包含许多图的窗口。太拥挤。 我为每个情节尝试了一个窗口,窗户太多了。
所以我只是想知道是否有任何现有的小部件,或者你是否有任何建议(或不同的想法)来实现这一目标:
我希望看到一对曲线,然后使用滑动条,按钮,鼠标滚动或任何其他小部件或事件轻松选择下一条曲线。通过改变曲线,前一个应该消失,图例也应该改变它的轴。
答案 0 :(得分:8)
我设法使用鼠标点击的事件处理程序。我会更改它以获得更有用的东西,但无论如何我都会发布我的解决方案。
import matplotlib.pyplot as plt
figure = plt.figure()
# plotting
plt.plot([1,2,3],[10,20,30],'bo-')
plt.grid()
plt.legend()
def on_press(event):
print 'you pressed', event.button, event.xdata, event.ydata
event.canvas.figure.clear()
# select new curves to plot, in this example [1,2,3] [0,0,0]
event.canvas.figure.gca().plot([1,2,3],[0,0,0], 'ro-')
event.canvas.figure.gca().grid()
event.canvas.figure.gca().legend()
event.canvas.draw()
figure.canvas.mpl_connect('button_press_event', on_press)
答案 1 :(得分:2)
听起来你想在应用程序中嵌入matplotlib。有一些可用的资源:
答案 2 :(得分:2)
我真的很喜欢使用特质。如果您按照教程Writing a graphical application for scientific programming 进行操作,您应该可以按照自己的意愿行事。本教程介绍了如何使用图形用户界面与matplotlib图形进行交互。