Подтвердить что ты не робот

Matplotlib размещение текста, например. suptitle внутри рамки

До сих пор я разместил свои субтитры над фреймом, например:

enter image description here

Как я могу получить субтитры из выше фрейма в фрейм?

До сих пор у меня есть решение, которое просто печатает текст и устанавливает его в нужную позицию при вычислении xlim и ylim. Однако это ошибочно, и если текст отличается, он просто выглядит сильным. Есть ли способ установить suplabel в рамку? Или просто разместите текст под рамкой и по центру? было бы очень удобно, если бы мне не нужно было знать о данных, которые отображаются внутри фрейма.

4b9b3361

Ответ 1

Ваше решение с помощью text также является моим решением. Однако вам не нужно вычислять позицию на основе xlim и ylim. Если вы установите transform=ax.transAxes, координаты для позиционирования текста считаются относительными относительно ограничивающего окна осей (0,0 - нижний левый угол). Например:

data = range(1,10);
fig = figure()
for i in range(6):
    ax = fig.add_subplot(2,3,i)

    ax.text(.5,.9,'centered title',
        horizontalalignment='center',
        transform=ax.transAxes)

    ax.plot(data)
show()

Plot showing text relative to axes bounding box.

Надеюсь, что это поможет!

Ответ 2

Вы считали axes.title? Вы можете увидеть документацию для него здесь. Вы также можете передавать координаты x и y как аргументы ключевого слова ax.title("my title", x=0.5, y=0.6).

Надеюсь, что это поможет.