当我尝试在最初放置另一个轴的同一位置上使用fig.add_axes将轴添加到pyplot图形中时,pyplot只是引用了旧轴。
我有一个要求在哪里制作图形,然后可以添加轴。根据要求,添加不同的轴。
我尝试将ax.set_position的“哪个”参数设置为“活动”和“原始”两者,但是没有一个。
import matplotlib.pyplot as plt
fig = plt.figure()
ax1 = fig.add_axes([0.07, 0.1, 0.88, 0.2])
ax1.set_position([0.07, 0.3, 0.88, 0.2], which='active')
ax2 = fig.add_axes([0.07, 0.1, 0.88, 0.2])
ax2.set_position([0.07, 0.3, 0.88, 0.5])
# When trying to set position of either figure it simply moves them both
# as ax2 is a reference to ax1
ax1.set_position([0.07, 0.1, 0.88, 0.2])
如何获取它,例如ax2是未引用到ax1的独立对象?
答案 0 :(得分:0)
我自己找到了一个答案-就是这样,以防其他人遇到类似的问题。
该问题将在下一版的matplotlib中修复,但与此同时,可以通过在每个轴上指定标签来绕过该问题。
import matplotlib.pyplot as plt
fig = plt.figure()
ax1 = fig.add_axes([0.07, 0.1, 0.88, 0.2], label='no_1')
ax1.set_position([0.07, 0.3, 0.88, 0.2], which='both')
ax2 = fig.add_axes([0.07, 0.1, 0.88, 0.2], projection=None)
ax2.set_position([0.07, 0.1, 0.88, 0.5], label='no_2')