Как сохранить соотношение сторон разных графиков

введите сюда описание изображения

У меня есть 4 разных графика расположенных на subplots, как мне сохранить соотношение сторон? По высоте они одинаковые(0.3), но по ширине есть 0.1 и 0.2, но 0.1 растягивается до 0.2, можно ли как-то сделать чтобы графики масштабировались между собой, как по высоте, так и по ширине?


Ответы (1 шт):

Автор решения: strawdog

Если у вас известно количество холстов и их соотношение, то можно сделать просто, через subplot_mosaic:

import matplotlib.pyplot as plt

fig, axs = plt.subplot_mosaic(
    '''
    AAB
    CCD
    '''
    ,figsize=(3, 5), constrained_layout=True)


for ax in axs.values():
    ax.plot(list(range(20)))
    
plt.show()

введите сюда описание изображения

То, что между тройными кавычками задет расположение холстов (axes). Одинакаовые буквы подряд - один холст. То есть, "AA" это первый холст, "B" - второй. Поскольку букв в обозначении первого холста в 2 раза больше, то и холст в два раза длиннее по ширине. Так же можно компоновать и по высоте.

→ Ссылка