Переместить метки радиальных тиков на полярный график в matplotlib
import numpy as np
import seaborn as sbs
import matplotlib.pyplot as plt
r = np.arange(0, 3.0, 0.01)
theta = 2 * np.pi * r
ax = plt.subplot(111, polar=True)
ax.plot(theta, r, color='r', linewidth=3)
ax.set_rmax(2.0)
ax.grid(True)
ax.set_title("A line plot on a polar axis", va='bottom')
plt.show()
Как переместить метки радиальных отметок (0,5, 1,0, 1,5, 2,0) под другим углом, скажем, 120 градусов?
2 ответа
В версии 1.4 или новее вы можете использовать "set_rlabel_position". например, чтобы разместить радиальные отметки на длинной линии, скажем, 135 градусов:
ax.set_rlabel_position(135)
Соответствующая документация находится здесь, немного скрытая под "проекциями".
Добавляем строку выше yields (у меня нет seaborn, поэтому по умолчанию используется форматирование matplotlib):
До 1.4, ax.set_rgrids
может принять угловой аргумент.
Я попытался запустить пример кода с правкой из ответа @alkamid, но в итоге закончился с ошибкой
AttributeError: 'PolarAxesSubplot' object has no attribute 'set_rlabel_position'
Моя версия matplotlib 1.3.1. Тем не менее, я нашел этот ответ python matplolib полярная диаграмма положение оси X со следующей строкой кода:
ax.set_rgrids([5,10], angle=22)
Это сработало для меня и дало желаемый результат.