在matplotlib子图中更改轴限制的简便方法

时间:2017-06-11 00:05:39

标签: python matplotlib

如何更改matplotlib子图中轴的限制?

例如,如果我有

x = np.linspace(0,4*np.pi,100)

plt.figure(1)
plt.subplot(121)
plt.plot(x,np.sin(x))
plt.xlim([0,4*np.pi])
plt.ylim([-1,1])
plt.axis('equal')

plt.subplot(122)
plt.plot(x,np.cos(x))
plt.xlim([0,4*np.pi])
plt.ylim([-1,1])
plt.axis('equal')

我尝试使用plt.xlimplt.ylim,但这些都没有用。

1 个答案:

答案 0 :(得分:0)

如果您只删除plt.axis('equal')行,那么您的工作原理。

编辑:要考虑到比例来回答您的评论,这是应该有效的代码:

import numpy as np
import matplotlib.pyplot as plt   

x = np.linspace(0,4*np.pi,100)

plt.figure(1)
plt.subplot(121)
plt.plot(x,np.sin(x))
plt.xlim([0,4*np.pi])
plt.ylim([-1,1])
plt.gca().set_aspect('equal', adjustable='box')


plt.subplot(122)
plt.plot(x,np.cos(x))
plt.xlim([0,4*np.pi])
plt.ylim([-2*np.pi,2*np.pi])
plt.gca().set_aspect('equal', adjustable='box')

Output image showing proper scales

解决方案由How to equalize the scales of x-axis and y-axis in Python matplotlib?

提供