Наложение гистограммы и оценки плотности

В психометрии у вас могут быть дискретные измерения (например, по шкале от 1 до 4), но при этом предполагается, что эти измерения представляют лежащий в основе непрерывный процесс.

Я пытаюсь создать график, который изображает эти дискретные измерения и лежащее в их основе распределение.

До сих пор мне не удалось получить то, что я произвел. Лучшее, что я придумал до сих пор, это попытка наложить график плотности на гистограмму. Но есть несоответствие между масштабом плотностей гистограммы и масштабом линии плотности:

library(ggplot2)

var1  <- c(rep(1, times = 50),
           rep(2, times = 60),
           rep(3, times = 40),
           rep(4, times = 30))

df <- as.data.frame(var1)

ggplot(df, aes(x=var1)) +
  geom_line(aes(y=..density..),stat = 'density') +
  geom_histogram(aes(y=..density..))
#> `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

Насколько я понимаю, я смотрю на две разные функции плотности:

  • на гистограмме я завышаю некоторые части распределения и занижаю другие, что дает искаженные оценки плотности по сравнению с
  • линия плотности, где вычисляется оценка плотности всего (непрерывного) диапазона значений на моем интервале.

... есть ли способ получить обе функции в одном масштабе (или, если нет, может быть, кто-то знает, почему нет статистического смысла пытаться это сделать).

Спасибо!


person raphael_ldl    schedule 02.12.2020    source источник
comment
хитрость заключается в использовании stat(density) вместо y в geom_histogram, например: stackoverflow.com/a/54700242/7941188   -  person tjebo    schedule 02.12.2020
comment
Спасибо за удивительно быстрые ответы! У меня сейчас другая работа, я вернусь к ней позже.   -  person raphael_ldl    schedule 02.12.2020
comment
Я все еще не получаю результат, который я ищу с этим. Я пытаюсь создать график, на котором вершина гистограммы находится на той же высоте, что и вершина кривой плотности. Может быть, вы можете поделиться репрексом, чтобы увидеть, действительно ли мы говорим об одном и том же?   -  person raphael_ldl    schedule 02.12.2020
comment
получить вершину кривой плотности в желаемой точке может быть непросто - это во многом зависит от параметра сглаживания. (Я думаю, что это что-то вроде bw = ...) в вызове geom_density   -  person tjebo    schedule 03.12.2020