假设我有一个预先存在的图,如:
from matplotlib import pyplot as plt
fig, axes = plt.subplots(nrows=2, ncols=3)
字符串
的数据
我如何添加第5个子图,将两行都放在第三列中?
我知道这是很容易创建这样一个数字从一开始就使用,例如,马赛克一样,
plt.figure().subplot_mosaic([[1, 2, 3], [4, 5, 3]])
型
它产生我想要的东西:
的
但是这个图来自一个现有的应用程序,如果我手动复制同样的图,那将需要大量的代码。所以我真的需要一种方法来做这件事 * 在 * 前4个子图已经构建和绘制之后。
可以这样做吗?(最好是在constrained_layout
激活的情况下,尽管我相信这要求太高了。
PS:我尝试了解决方案here和here,但我不能让他们为我想要的工作.
1条答案
按热度按时间nwlls2ji1#
您可以通过先调整当前绘图,然后将新轴放置在指定位置来添加新轴。
字符串
在这里,我将现有图表的右边框设置为0.7(相对单位),然后将新轴放入矩形中:(左,底,宽,高)(相对单位)。使用ax2.plot()在新轴上添加数据。它会打乱布局,但我不知道如何应对。如果在终端中打开,但是,在全屏(图片相关)中看起来不错