gpt4 book ai didi

python - 在 Matplotlib (Python) 中处理子图的比例

转载 作者:行者123 更新时间:2023-12-04 00:54:15 25 4
gpt4 key购买 nike

您好,我正在尝试使用 matplotlib 创建下面的子图。

Subplots

我有以下代码,但我似乎无法使用参数正确配置绘图。如果对此有任何帮助,我将不胜感激。欢迎使用 python 上的任何其他绘图工具,它们也可以帮助我以这种方式拼接 4 个图。

非常感谢!

gs1 = fig9.add_gridspec(nrows=8, ncols=8, top=0.6, bottom=0.1,left = 0, right = 0.65,
wspace=0.05, hspace=0.05)
# f9_ax1 = fig9.add_subplot(gs1[:-1, :])
ax2 = fig9.add_subplot(gs1[:1, :1])
ax3 = fig9.add_subplot(gs1[:1, 1:])

gs2 = fig9.add_gridspec(nrows=4, ncols=4, top=1.2, bottom=0.4, left = 0, right = 0.5,
wspace=0.05, hspace=0.05)
ax4 = fig9.add_subplot(gs1[1: , :1])
ax5 = fig9.add_subplot(gs1[1:, 1:])

上面的代码给出了这个 enter image description here

最佳答案

创建 2 个单独的 gridspecs,您可以在其中将两者的 height_ratios 设置为 (6, 4),然后给它们不同的 width_ratios根据需要。

例如:

import matplotlib.pyplot as plt

fig = plt.figure()

gs1 = fig.add_gridspec(nrows=2, ncols=2, hspace=0.05, wspace=0.05,
height_ratios=(6, 4), width_ratios=(35, 65))
gs2 = fig.add_gridspec(nrows=2, ncols=2, hspace=0.05, wspace=0.05,
height_ratios=(6, 4), width_ratios=(1, 1))

ax1 = fig.add_subplot(gs1[0, 0])
ax2 = fig.add_subplot(gs1[0, 1])
ax3 = fig.add_subplot(gs2[1, 0])
ax4 = fig.add_subplot(gs2[1, 1])

plt.show()

enter image description here

关于python - 在 Matplotlib (Python) 中处理子图的比例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63935528/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com