Ответ 1
Просто используйте adjustable='box-forced'
вместо adjustable='box'
.
Как упоминает @cronos, вы можете передать его с помощью subplot_kw
kwarg (дополнительные аргументы ключевого слова для subplots
передаются в Figure
не Axes
, поэтому необходимость в subplot_kw
).
Вместо этого я собираюсь использовать setp
, который в основном просто делает for item in sequence: item.set(**kwargs)
. (У всех художников matplotlib есть метод set
, который можно использовать аналогично matlab set
.)
Какой из них "лучший" подход будет зависеть от того, что вы делаете. Многие люди утверждают, что setp
очень "неспокойный", но я не вижу проблемы с ним.
В качестве быстрого примера:
import matplotlib.pyplot as plt
fig, axes = plt.subplots(ncols=3, sharex=True, sharey=True)
plt.setp(axes.flat, aspect=1.0, adjustable='box-forced')
axes[0].plot(range(50))
plt.show()
Я забываю причину двух разных настраиваемых стилей коробки, на данный момент. Я помню, что в первый раз, когда я наткнулся на это, я понял, что это действительно запутывает, и я прорыл код, и для этого была явная причина... Я не могу вспомнить, что это за причина в данный момент.