r - 如何设置 facet_grid() 以便 y 轴仅显示每个实例中的最高值而中间不显示任何值?

标签 r ggplot2 facet-grid

我有一个 facet_grid 设置,根据他们的头衔显示泰坦尼克号上的人的存活率。

enter image description here

每一行显示一个标题范围(例如“先生”、“博士”等)。

我在 facet_grid() 中设置了 scales="free",因此每个 y 轴都根据它标识的组进行定制。

但是,由于有很多组/标题,我希望每个方面网格上的 y 轴只显示最高值,而不是中间的所有值。例如,如果有 40 人死于“先生”,那么我想要“先生”的 y 轴顶部。 facet grid 显示值 40 并且没有其他低于该值的内容。但是,如果只有一个人死亡,我不希望 y 轴显示为:0.00、0.25、0.50、1.00,因为这些“中间”值没有任何值(value)。

这能实现吗?

最佳答案

试试这个

custom_breaks <- function(x) range(x)

ggplot(mpg, aes(displ, cty)) + geom_point() +
  facet_grid( cyl~., scales="free") +
  scale_y_continuous(breaks = custom_breaks)

enter image description here

关于r - 如何设置 facet_grid() 以便 y 轴仅显示每个实例中的最高值而中间不显示任何值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45046603/

相关文章:

r - 使用 Vennerable 的并排维恩图

r - 在 RStudio 中调试 'testthat' 测试

R:如何更改 ggplot 中的配色方案(需要 14 种颜色)

r - facet_grid 中的多行

r - 在 shapefile 后面绘制栅格

python - 自动更正拼写检查器

R:具有自定义中断和恒定宽度的直方图

r - 当存在scale_x_reordered()时更改因子标签ggplot

matplotlib - 是否可以在 Seaborn Facetgrid 中截断空网格?