想象一下以下简单的情况:
import numpy as np
import matplotlib.pyplot as plt
fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.plot(np.arange(10))
ax1.set_aspect("equal")
ax2.plot(np.arange(10), np.arange(0, 1, .1))
plt.show()
什么是最好/最简单的解决方案,以便ax2具有与ax1相同的宽度/高度,无论ax2的方位是什么?
答案 0 :(得分:1)
对于您的具体情况,您可以将ax2
的宽高比设置为10,例如:* / p>
import numpy as np
import matplotlib.pyplot as plt
fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.plot(np.arange(10))
ax1.set_aspect("equal")
ax2.plot(np.arange(10), np.arange(0, 1, .1))
# Determining the ranges
x1,x2 = ax2.get_xlim()
y1,y2 = ax2.get_ylim()
xRange = x2-x1
yRange = y2-y1
ax2.set_aspect(xRange/yRange)
plt.show()
干杯