import numpy as np
import matplotlib.pyplot as plt
plt.figure(1)
plt.subplot(211)
xs = np.linspace(-5,5,500)
ys = np.sqrt(5**2 - xs**2)
plt.plot(xs,ys)
plt.plot(xs,-ys)
plt.subplot(212)
plt.plot(xs, xs**2)
plt.show()
这里是我生成的代码,想知道如果我想保持上图x和y比例为1:1,那么无论这个图中有多少个子图,球总是看起来很圆。
我试图从网站上找到它,似乎不是一个简单的解决方案..
答案 0 :(得分:1)
创建子图时,您可以告诉它:
plt.subplot(211, aspect='equal')
如果您已经创建了子图,则必须使用plt.gca
获取当前轴,然后调用set_aspect
方法:
plt.gca().set_aspect('equal')
或者,您可以从头开始跟踪轴:
ax = plt.subplot(211)
ax.set_aspect('equal')
您可能需要致电
plt.draw()
为了更新情节。