Есть ли способ в matplotlib установить отметки между метками и осью, как по умолчанию в Origin? В разделе примеров онлайн не отображается ни одного сюжета с этой функцией. Мне нравится иметь тики за пределами области печати, потому что иногда сюжет скрывает тики, когда внутри.
Положение метки matplotlib относительно оси
Ответ 1
Чтобы установить только основные тики:
ax = plt.gca()
ax.get_yaxis().set_tick_params(direction='out')
ax.get_xaxis().set_tick_params(direction='out')
plt.draw()
установить все тики (малые и большие),
ax.get_yaxis().set_tick_params(which='both', direction='out')
ax.get_xaxis().set_tick_params(which='both', direction='out')
plt.draw()
установить одновременно оси x и y:
ax = plt.gca()
ax.tick_params(direction='out')
документ с уровнем осей и уровень осей doc
Чтобы сдвинуть метки тика относительно тиков, используйте pad
. Сравнить
ax.tick_params(direction='out', pad=5)
plt.draw()
с
ax.tick_params(direction='out', pad=15)
plt.draw()
Ответ 2
Думаю, вам это нужно:
Получив объект subplot, вы можете играть с вашими тиками
ax = plt.subplot(111)
yax = ax.get_yaxis()
plt.xticks(y_pos, city)
xtickNames=ax.set_xticklabels(city)
plt.setp(xtickNames, rotation=45, fontsize=10)