如何在seaborn catplot中仅重新缩放一个y轴并添加数据标签

Rao*_*des 5 python seaborn catplot

我使用 catplot 函数创建了一个关于死亡/受伤人数的猫图。然而,由于两者的比例非常不同,第二张图中的条形非常小并且无法读取。无论如何,我可以重新缩放第二个图表的 y 轴吗?并向两个图表添加数据标签?

grid = sns.catplot(x = 'borough',
            y = 'Injured/Killed',
            hue = 'Commuter Type',
            col = 'Injury Type',
            data = tabular_breakdown,
            kind = 'bar')
Run Code Online (Sandbox Code Playgroud)

catplot 输出(图像)

小智 3

要解决您的问题,需要考虑两件事。

  1. 对 has 的调用catplot默认为sharey=True,因此您在第二个轴中所做的任何更改都会反映在另一个轴上。
  2. 您必须访问两个轴才能调整它们。它们包含在 中grid,所以没问题。

要解决第一个问题,请通过 传递您的呼叫sharey=False。要解决第二个问题,请使用类似 的方法访问轴ax0, ax1 = grid.axes[0],然后调用ax1.set_ylim(<values>)。如果您不想指定sharey=False(这正是我最初想要的),您将不得不求助于此处的解决方案。