Python: параллельные координаты подзаголовков в подзаговоре

Я видел этот пример того, как создать график с параллельными координатами: Параллельные координаты:

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

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

Для уже существующей фигуры фигура и оси определяются как:

fig = plt.figure(figsize=plt.figaspect(2.))
ax =  fig.add_subplot(1,2,1)

Для параллельных координат они предлагают:

fig, axes = plt.subplots(1, dims-1, sharey=False)

Как я могу согласовать обе инициализации фигуры и топора?


person Jan    schedule 09.01.2014    source источник
comment
Вы говорите, что у вас уже есть фигура fig, и на этой фигуре уже есть несколько графиков, и теперь вы хотите, чтобы график параллельных координат был наложен на подграфик №1, верно?   -  person CT Zhu    schedule 10.01.2014
comment
Это именно то, что я хочу, да :-)   -  person Jan    schedule 10.01.2014


Ответы (1)


Один из вариантов — создать все оси, используя subplots, а затем просто сместить расположение той оси, которую вы не хотите иметь, wspace=0, как это делается для графиков с параллельными координатами:

import matplotlib.pylab as plt

dims = 4
fig, axes = plt.subplots(1, dims-1 + 1, sharey=False)

plt.subplots_adjust(wspace=0)

ax1 = axes[0]
pos = ax1.get_position()
ax1.set_position(pos.translated(tx = -0.1,ty=0))

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

Я добавил 1 к количеству создаваемых столбцов (оставив его явно -1+1) и установил wspace=0, который рисует все графики, смежные друг с другом, без пробела между ними. Возьмите самые левые оси и получите позицию, которая является Bbox. Это хорошо, так как дает вам возможность перевести его, tx=-0.1 разделив существующую фигуру.

person Greg    schedule 10.01.2014
comment
Это уже выглядит великолепно! Теперь для некоторых приложений график рядом с параллельными координатами должен стать двумя графиками, предпочтительно друг над другом. И было бы неплохо, если бы отдельный график имел такую ​​же ширину, как и полный график Параллельных Координат. Возможны ли такие вещи? - person Jan; 10.01.2014
comment
Да, я предлагаю вам прочитать это. - person Greg; 10.01.2014
comment
Привет @Greg, вы можете помочь решить проблемы с этими параллельными координатами - stackoverflow.com/questions/49329600/ или stackoverflow.com/questions/49334965/ . Это было бы большим подспорьем. Заранее спасибо. - person Harshit Laddha; 17.03.2018