В matplotlib, как вы показываете ось по обе стороны от фигуры?

Я хочу нарисовать сюжет с matplotlib с осью по обе стороны от сюжета, подобный этому сюжету (цвет не имеет отношения к этому вопросу):

сюжет

Как я могу сделать это с помощью matplotlib ?

Примечание: вопреки тому, что показано на примере графика, я хочу, чтобы две оси были одинаковыми и хотели показать только один граф. Добавление двух осей только упрощает чтение графика.

В онлайн-документации есть несколько соответствующих примеров:

  • Два шкалы (кажется, делают именно то, о чем вы просите)
  • Двойной Фаренгейт и Цельсий

Вы можете использовать tick_params () :

 bar(range(10), range(10)) tick_params(labeltop=True, labelright=True) 

Создает это изображение:

Штриховая диаграмма с осью x и y, помеченной таким же

Я сделал это раньше, используя следующее:

 # Create figure and initial axis fig, ax0 = plt.subplots() # Create a duplicate of the original xaxis, giving you an additional axis object ax1 = ax.twinx() # Set the limits of the new axis from the original axis limits ax1.set_ylim(ax0.get_ylim()) 

Это будет точно дублировать исходную ось y.