Seaborn(小提琴图)的y轴值过多

时间:2019-08-28 19:06:49

标签: python matplotlib seaborn violin-plot

我有几个子图,数据都是概率,所以(并且应该)在0到1之间。当我用小提琴图绘制它们时,ax [0]的y轴延伸到1以上(参见图片) 。我知道这只是由于小提琴制作的分布内核,但仍然看起来很糟糕,我希望这两个图的y轴相同。我在左侧的图上尝试过set_ylim,但随后我无法获得与右侧的图相同的值(或外观)。有什么想法吗?

enter image description here

1 个答案:

答案 0 :(得分:0)

在创建subplots时,请将sharey参数设置为True,以便两个图都共享相同的垂直轴限制。


[编辑]

由于您已经尝试将sharey设置为True,因此建议您从左侧图形中获取上下限yminymax并将它们传递为set_ylim()中的参数表示右边的数字。

1)创建子图:

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

2)在此处创建左侧图形:ax[0].plot(...)

3)使用get_ylim()方法获取轴限制,详细信息hereymin, ymax = ax[0].get_ylim()

4)创建右侧图形:ax[1].plot(...)

5)设置此新图形的轴限制:ax[1].set_ylim(bottom=ymin, top=ymax)