如果你想改变的数据限制,使轴广场,加datalim
您来电set_aspect
:
ax.set_aspect('equal', 'datalim')
如果你想缩放来改变,这样的限制是不同但轴线看起来是平方的,您可以计算轴线尺寸比例并将其明确设置:
ax.set_aspect(1./ax.get_data_ratio())
例如
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(7,7))
ax = fig.add_subplot(111)
x = np.linspace(0,np.pi,1000)
y = np.sin(3*x)**2
ax.plot(x,y)
ax.set_aspect('equal', 'datalim')
plt.show()
或
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(7,7))
ax = fig.add_subplot(111)
x = np.linspace(0,np.pi,1000)
y = np.sin(3*x)**2
ax.plot(x,y)
ax.set_aspect(1./ax.get_data_ratio())
plt.show()
来源
2015-11-06 09:05:33
xnx
你的回答不工作,虽然我不是故意要执行一个正方形图形(内figsize的数字只是为例子,它可能是(10,20)或其他..)。其实我不想让它变成方形,我只是想让它变大。有没有办法做到这一点?谢谢 – nivniv