Matplotlib: получить и установить положение осей
в matlab легко получить и установить положение существующих осей на рисунке:
pos = get(gca(), 'position')
set(gca(), 'position', pos)
Как это сделать в Matplotlib?
мне это нужно по двум связанным причинам:
Это конкретные проблемы, которые я пытаюсь решить:
У меня есть столбец подзаголовков, где у некоторых есть цветные панели, а у некоторых нет, и они не одинаковой ширины, т. е. оси X не выравниваются. В colorbar крадет пространство от осей. Это также происходит в matlab, и там я бы использовал вышеуказанный трюк, чтобы сделать все оси одинаково широкими, скопировав ширину с осей с цветовой полосой на те, которые без.
добавьте пространство между отдельными подзаголовками, сжимая оси. Функция adjust_subplots () настраивает все подзаголовки одинаково.
1 ответов
установка положения осей аналогична в Matplotlib. Вы можете использовать get_position и set_position методы топоры.
import matplotlib.pyplot as plt
ax = plt.subplot(111)
pos1 = ax.get_position() # get the original position
pos2 = [pos1.x0 + 0.3, pos1.y0 + 0.3, pos1.width / 2.0, pos1.height / 2.0]
ax.set_position(pos2) # set a new position
вы также можете взглянуть на GridSpec Если вы еще не.