Используйте радиолокационную диаграмму в подзаголовке

Я использовал этот код для создания радарной диаграммы: Радарная диаграмма с несколькими шкалами на несколько осей; Теперь я хочу поместить эту диаграмму в нижний правый угол набора фигур 2x1. Используя приведенный ниже код:

fig = pl.figure(figsize=(5, 5))

titles = ['A','B','C','D','E','F']
parameters_list = ['','2','','4','','6','','8','','10']
labels = [parameters_list, parameters_list, parameters_list,parameters_list,parameters_list,parameters_list]
radar = Radar(fig, titles, labels)

pl.subplot(2, 1, 1)
radar.plot([1, 3, 2, 5, 4, 9],  "-", lw=2, color="r", alpha=0.4, label="first")
pl.subplot(2, 1, 2)
radar.plot([3, 6, 4, 1, 1, 2],  "-", lw=2, color="y", alpha=0.4, label="second")

это дает два пустых поля, в то время как я хотел бы получить две радарные диаграммы, одну над другой (см. ссылку ниже).

[1]: https://i.stack.imgur.com/oaXzf.png - два пустых поля

Если я попытаюсь создать одну радиолокационную диаграмму, код будет работать правильно (см. Код и ссылку ниже):

fig = pl.figure(figsize=(5, 5))
titles = ['A','B','C','D','E','F']
parameters_list = ['','2','','4','','6','','8','','10']
labels = [parameters_list, parameters_list, parameters_list,parameters_list,parameters_list,parameters_list]
radar = Radar(fig, titles, labels)

radar.plot([1, 3, 2, 5, 4, 9],  "-", lw=2, color="r", alpha=0.4, label="first")
radar.ax.legend()

[2]: https://i.stack.imgur.com/LnL6e.png - радарная карта работает правильно

Как мне расположить две радиолокационные карты одна над другой? Или как я могу вставить радар в подзаголовок, в то время как другие подзаголовки показывают другой вид диаграммы?


person BabyBetulla    schedule 27.09.2016    source источник


Ответы (1)


Поскольку вы используете класс Radar, указанный в ответе HYRY в Радарной диаграмме с несколькими масштабируется по нескольким осям, вот решение, использующее это:

fig = pl.figure(figsize=(5, 5))

titles = ['A','B','C','D','E','F']
parameters_list = ['','2','','4','','6','','8','','10']
labels = [parameters_list, parameters_list, parameters_list,parameters_list,parameters_list,parameters_list]

radar = Radar(fig, titles, labels, rect=[0.0, 0.55, 0.5, 0.45])
radar.plot([1, 3, 2, 5, 4, 9],  "-", lw=2, color="r", alpha=0.4, label="first")

radar = Radar(fig, titles, labels, rect=[0.0, 0.0, 0.5, 0.45])
radar.plot([3, 6, 4, 1, 1, 2],  "-", lw=2, color="y", alpha=0.4, label="second")

Результат:

введите описание изображения здесь

Я использовал необязательный параметр rect в этом классе, который предоставляет размеры для [left, bottom, width, height] относительно полного числа.

Сделав это, я не знаю, почему вы решили использовать класс, предназначенный для отображения нескольких шкал, поскольку у вас, кажется, есть только одна шкала (дублированная 6 раз в массиве labels), поэтому я должен предположить, что у вас есть веская причина.

person Shovalt    schedule 27.09.2016