Мосты с высотой, рассчитанной на счет - PullRequest
0 голосов
/ 07 февраля 2019

Как изменить масштабирование фигуры ggridges, чтобы график вел себя больше как гистограмма, а не как график плотности ядра?То есть я хотел бы, чтобы рисунок отражал разный размер категориальной переменной.

Например,

library(tidyverse)
library(ggridges)

data(mpg)    

mpg %>% 
  mutate(
    drv = drv %>% 
      fct_reorder(
        cty
        )
    ) %>% 
  ggplot(
    aes(cty, drv)
    ) +
  geom_density_ridges(
    stat = "binline", 
    scale = .8
    )

enter image description here

проблема здесь в том, что категория r mpg$drv имеет только 25 наблюдений, в то время как у f и 4 имеется более 100 наблюдений каждое.Я хочу, чтобы высота фигуры отражала количество наблюдений в каждой точке

1 Ответ

0 голосов
/ 07 февраля 2019

Достаточно забавно, ваш заголовок по сути является решением.Вы захотите включить height = ..count.. в aes()

mpg %>% 
  mutate(
    drv = drv %>% 
      fct_reorder(
        cty
      )
  ) %>% 
  ggplot(
    aes(cty, drv, height = ..count..)
  ) +
  geom_density_ridges(
    stat = "binline", 
    scale = .8
  )

, что дает вам следующее: unscaled height ggpridges

...