python - 动态更改 matplotlib 图的内容

标签 python matplotlib plot

前一段时间,我正在使用 python 和 matplotlib 比较两个函数的输出。结果非常简单,因为使用 matplotlib 绘图非常简单:我只是用不同的标记绘制了两个数组。小菜一碟。

现在我发现自己遇到了同样的问题,但现在我有很多曲线要比较。我最初尝试用不同的颜色和标记绘制所有内容。这并不令我满意,因为每条曲线的范围并不完全相同。除此之外,我很快就用完了足以区分的颜色和标记(RGBCMYK,在那之后,自定义颜色与之前的任何颜色相似)。

我还尝试绘制每对曲线的子图,获得一个包含许多图的窗口。太拥挤。 我尝试了每个地 block 一个窗口,但窗口太多了。

所以我只是想知道是否有任何现有的小部件,或者您是否有任何建议(或不同的想法)来完成此任务:

我想查看一对曲线,然后使用滑动条、按钮、鼠标滚动或任何其他小部件或事件轻松选择下一条曲线。通过改变曲线,之前的曲线应该消失,图例应该改变,它的轴也应该改变。

最佳答案

好吧,我设法用鼠标点击的事件处理程序来做到这一点。我会更改它以获得更有用的东西,但我还是会发布我的解决方案。

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)

关于python - 动态更改 matplotlib 图的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2050728/

相关文章:

python - Pyplot 一一改变颜色不起作用

python - 在 csv 中搜索字符串并保存该列

Python - 加速寻路

python - 如何根据相似值将一列拆分为多列

r - 更改 col 参数引发错误以及如何存储单个图形参数

r - 在美国 map 上绘制数值

javascript - Plotly - 从第一个数据点开始 X 轴

python pycrypto : module' object has no attribute 'importKey'

python - 从 flask 蓝图中导入应用程序设置

matplotlib - 描述 Julia 中二维空间中数据点密度的图