加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 动态更改matplotlib图的内容

发布时间:2020-12-20 12:16:12 所属栏目:Python 来源:网络整理
导读:我刚才,我正在使用 python和matplotlib比较两个函数的输出.结果非常简单,因为使用matplotlib进行绘图非常简单:我只是绘制了两个具有不同标记的数组.小菜一碟. 现在我发现自己遇到了同样的问题,但现在我有很多曲线要比较.我最初尝试使用不同的颜色和标记绘制
我刚才,我正在使用 python和matplotlib比较两个函数的输出.结果非常简单,因为使用matplotlib进行绘图非常简单:我只是绘制了两个具有不同标记的数组.小菜一碟.

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

我还尝试对每对曲线进行子绘图,获得一个包含许多图的窗口.太拥挤.
我为每个情节尝试了一个窗口,窗户太多了.

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

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

解决方法

好吧,我设法用鼠标点击的事件处理程序.我会更改它以获得更有用的东西,但无论如何我都会发布我的解决方案.

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,3] [0,0]
    event.canvas.figure.gca().plot([1,[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)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读