Центр yticklabels в горизонтальном barplot - matplotlib - PullRequest
0 голосов
/ 15 октября 2018

Можно ли как-нибудь центрировать этиктклабели по центру горизонтального столбца с отрицательными и положительными значениями?Я хочу, чтобы имена различных значений y (хранящихся в списке под названием «имена») отображались в середине графика (с центром в точке x = 0).Возможно ли это?

Демонстрационный код:

names = [1, 2, 3]
fig, axs = plt.subplots(3,1, figsize=(12, 24)) 
ind = np.arange(len(names))  # the x locations for the groups
width = 0.35       # the width of the bars
axs[0].barh(ind, [3, 4, 5], width, color='red', label='demo')
axs[0].set(yticks=ind + width, yticklabels=names)

plt.show()

1 Ответ

0 голосов
/ 15 октября 2018

Вы были близки.Вам просто нужно использовать align=center и затем переименовать тиковые метки, как вы делаете без смещения тиков на 0.5.Я заменил coef_names на names, так как первый не был определен в предоставленном вами коде.

names = [1, 2, 3]
fig, axs = plt.subplots(3,1, figsize=(12, 24)) 
ind = np.arange(len(names))  # the x locations for the groups
width = 0.35       # the width of the bars
axs[0].barh(ind, [3, 4, 5], width, color='red', align='center',label='demo')
axs[0].set(yticks=ind , yticklabels=names)

enter image description here

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