2014-02-14 2 views
2

Я использую (возможно, неправильно использую?) Полярную диаграмму для представления некоторых данных, которые у меня есть. Я бы хотел, чтобы метки, расположенные прямо над осью х, были выше сегмента данных. Так что прямо между осью.python matplolib полярная диаграмма позиция по оси x

Я нашел несколько статей о том, как вращать все, но всегда держит метку прямо над осью.

Мир кода у меня есть для оси (если вам нужно все определения/код, пожалуйста, так сказать):

# Set axis names and orientation 
ax.set_theta_zero_location("N") 
ax.set_xticklabels(['Seg 1', 'Seg 2', 'Seg 3', 'Seg 4', 'Seg 5', 'Seg 6', 'Seg 7', 'Seg 8']) 
ax.set_ylim((0, 10.0)) 
ax.set_rgrids([5,10], angle=22) 

Текущее изображение производит:

enter image description here

Теперь мне бы хотелось, чтобы метки 'Seg 1', 'Seg 2' и т. Д. Были перемещены от оси к правой оси.

Есть ли способ сделать это?

ответ

2

вы можете сделать это, установив метки на мелкие тиков, но затем установив небольшую ширину клеща до нуля, так что вы их не видите:

 
import matplotlib.ticker as ticker 

# Set the major and minor tick locations 
ax.xaxis.set_major_locator(ticker.MultipleLocator(np.pi/4)) 
ax.xaxis.set_minor_locator(ticker.MultipleLocator(np.pi/8)) 

# Turn off major tick labels 
ax.xaxis.set_major_formatter(ticker.NullFormatter()) 

# Set the minor tick width to 0 so you don't see them 
for tick in ax.xaxis.get_minor_ticks(): 
    tick.tick1line.set_markersize(0) 
    tick.tick2line.set_markersize(0) 
    tick.label1.set_horizontalalignment('center') 

# Set the names of your ticks, with blank spaces for the major ticks 
ax.set_xticklabels(['','','Seg 1','','Seg 2','','Seg 3','','Seg 4','','Seg 5','','Seg 6','','Seg 7','','Seg 8'],minor=True) 
+0

Спасибо! Он работал сразу на моем собственном компьютере. Однако, когда я попробовал его на удаленном сайте, этого не произошло. Ошибок нет, но ярлыки просто не двигались. После обновления matplotlib он работал как шарм. Значит, это работает только в более поздних версиях? Или у меня действительно была старая версия? –

Смежные вопросы