Сиборн (сюжет для скрипки) слишком много значений по оси Y

У меня есть несколько подзаголовков, и данные представляют собой вероятности, поэтому они должны (и должны) находиться в диапазоне от 0 до 1. Когда я рисую их с помощью скрипичного графика, ось y ax [0] простирается выше 1 (см. рисунок). Я знаю, что это только из-за ядра дистрибутива, которое делает скрипка, но все же это выглядит плохо, и я хочу, чтобы оси Y этих двух графиков были одинаковыми. Я попробовал set_ylim на левом графике, но тогда я не могу получить значения (или внешний вид), чтобы они были такими же, как на графике справа. Любые идеи?

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


person fffrost    schedule 28.08.2019    source источник


Ответы (1)


При создании подграфиков установите для параметра sharey значение True, чтобы оба графика имели одинаковые ограничения для вертикальная ось.


[ИЗМЕНИТЬ]

Поскольку вы уже пытались установить sharey в True, я предлагаю получить нижний и верхний пределы ymin и ymax из левой части рисунка и передать их в качестве аргументов в set_ylim() для правой части рисунка.

1) Создайте свои подзаголовки:

fig, ax1 = plt.subplots(1,2, figsize = (5, 5), dpi=100)

2) Создайте левую фигуру здесь: ax[0].plot(...)

3) Получите пределы осей, используя метод get_ylim(), как подробно описано здесь : ymin, ymax = ax[0].get_ylim()

4) Создайте правую фигуру: ax[1].plot(...)

5) Установите пределы осей этой новой фигуры: ax[1].set_ylim(bottom=ymin, top=ymax)

person Sheldon    schedule 28.08.2019
comment
Я должен был сказать, что пробовал это, и что проблема в том, что ниже этих осей есть еще 2 оси, которые имеют другой масштаб. По этой причине параметр sharey не работает. - person fffrost; 29.08.2019