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

python – 多个y-scale但只有一个启用了pan和zoom

发布时间:2020-12-16 21:53:44 所属栏目:Python 来源:网络整理
导读:考虑以下用于绘制matplotlib图的python代码: import matplotlib.pylab as ppimport numpy as npalpha = np.linspace(0,2 * np.pi,400)sig1 = np.sin(alpha)sig2 = np.sin(2 * alpha) + 2 * (alpha np.pi)ax1 = pp.subplot(111)ax2 = ax1.twinx()ax1.plot(al

考虑以下用于绘制matplotlib图的python代码:

import matplotlib.pylab as pp
import numpy as np

alpha = np.linspace(0,2 * np.pi,400)
sig1 = np.sin(alpha)
sig2 = np.sin(2 * alpha) + 2 * (alpha > np.pi)

ax1 = pp.subplot(111)
ax2 = ax1.twinx()

ax1.plot(alpha,sig1,color='b')
ax2.plot(alpha,sig2,color='r')
ax1.set_ylabel('sig1 value',color='b')
ax2.set_ylabel('sig2 value',color='r')
pp.grid()
pp.show()

给我一个很好的情节

我想了解如何禁用其中一个轴进行平移/缩放,因此当我使用平移/缩放工具时,只有ax2会重新缩放.有没有办法做到这一点?我想以编程方式进行.

最佳答案
您可以使用ax2.set_navigate(False)执行此操作:

from matplotlib.pyplot import *
import numpy as np

fig,ax1 = subplots(1,1)
ax2 = ax1.twinx()
ax2.set_navigate(False)
x = np.linspace(0,2*np.pi,100)
ax1.plot(x,np.sin(x),'b')
ax1.set_xlabel('Scaleable axis')
ax1.set_ylabel('Scaleable axis')
ax2.plot(x,np.sin(x+1),'r')
ax2.set_ylabel('Static axis',weight='bold')

(编辑:李大同)

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

    推荐文章
      热点阅读