辅助Y轴位置matplotlib

辅助Y轴位置matplotlib,matplotlib,Matplotlib,我需要更改matplotlib绘图上的次Y轴位置 这就像是同一个情节中的一个子情节 在下图中,我的第二个Y轴从与第一个Y轴相同的位置开始。我需要第二个Y轴从第一个Y轴的“18”位置开始,具有较小的比例(红线) 如果我理解正确,看到您发布的图,您需要第二个y轴。您可以使用plt.twinx执行此操作。示例如下所示: import matplotlib.pyplot as plt plt.plot([1,2,3]) plt.twinx() plt.plot([5,4,5]) plt.show()

我需要更改matplotlib绘图上的次Y轴位置

这就像是同一个情节中的一个子情节

在下图中,我的第二个Y轴从与第一个Y轴相同的位置开始。我需要第二个Y轴从第一个Y轴的“18”位置开始,具有较小的比例(红线)


如果我理解正确,看到您发布的图,您需要第二个y轴。您可以使用
plt.twinx
执行此操作。示例如下所示:

import matplotlib.pyplot as plt

plt.plot([1,2,3])
plt.twinx()
plt.plot([5,4,5])
plt.show()

如果我理解这个问题,你需要一个
twinx
轴,正如@kikocorreoso所说,但是你也需要压缩它,所以它只占据y轴的上部

只需将
ylim
设置为大于所需的值,并显式设置
yticks
,即可完成此操作。下面是一个随机数据的例子

import matplotlib.pyplot as plt
import numpy as np

data = [np.random.normal(np.random.randint(0,5),4,25) for _ in range(25)] # some random data

fig=plt.figure()
ax1=fig.add_subplot(111)
ax2=ax1.twinx()

ax1.set_ylim(-5,25)
ax2.set_ylim(0,14)
ax2.set_yticks([10,12,14]) # ticks below 10 don't show up

ax1.boxplot(data)
ax2.plot(np.linspace(0,26,50),12.+2.*np.sin(np.linspace(0,2.*np.pi,50))) # just a random line

plt.show()

这正是我需要的。谢谢