Matplotlib 是否将集合添加到多轴?

Matplotlib 是否将集合添加到多轴?,matplotlib,Matplotlib,我正在尝试将BrokenBarHCollection添加到我的图形上的多轴,如下所示: barcollection = collections.BrokenBarHCollection(... ax1 = plt.subplot(211) ax1.add_collection(barcollection) ax2 = plt.subplot(212) ax2.add_collection(barcollection) plt.show() 如图所示,该图仅显示了第二个子图中的集合。如果我将ax

我正在尝试将BrokenBarHCollection添加到我的图形上的多轴,如下所示:

barcollection = collections.BrokenBarHCollection(...
ax1 = plt.subplot(211)
ax1.add_collection(barcollection)
ax2 = plt.subplot(212)
ax2.add_collection(barcollection)
plt.show()

如图所示,该图仅显示了第二个子图中的集合。如果我将ax2.add行注释掉,它将仅在第一个子批中显示集合。在第3行和第4行之间再次声明barcollection将使其显示在两个子批次中。为什么会发生这种情况?

这是因为
matplotlib
对象知道要附着到哪个绘图,并且不会附着到多个绘图

如果使用创建浅拷贝,则可以跨多个轴重复使用大部分数据结构

import copy
bc2 = copy.copy(barcollection)
ax2.add_collection(bc2)
最近有另一个问题,但我很难找到它