Центрировать метки y по горизонтали в середине графика matplotlib - PullRequest
0 голосов
/ 17 июня 2020

Я пытаюсь центрировать метку y по горизонтали на моем графике. Я хочу, чтобы метки отображались так же, как обычно, за исключением того, что они располагались по центру, а не по краям графика.

import matplotlib
import matplotlib.pyplot as plt

y = np.arange(0, 11, 1)
x = np.arange(0, 11, 1)
fig, ax = plt.subplots(figsize=(10,50))
ax.xaxis.tick_top() 
offset = matplotlib.transforms.ScaledTranslation(0.5, 0, fig.transFigure)
for label in ax.yaxis.get_majorticklabels():
    label.set_transform(label.get_transform() + offset)
plt.margins(y=0.005)
plt.yticks(np.arange(0, len(y)+1, 1))
plt.plot(y, x, lw=2)
plt.show()

(Если вы заметили, что у меня поменяли местами массивы x и y, это потому, что я тоже пытаюсь повернуть свой график).

Я получил что-то близкое к тому, что я хотел бы, хотя я не уверен, что это на самом деле центрировано, плюс, кажется, это немного опускает ярлыки, а я не хочу. Я не уверен, почему это происходит, потому что я устанавливаю только значение x в моем смещении.

Как я могу центрировать этикетки, не двигаясь вниз?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...