ggplot для нормального распределения — добавить данные на график

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

require(ggplot2)
my_data<-c(70,  71, 75, 78, 78, 79, 80, 81, 84, 85, 87, 87, 90, 91, 95, 95, 96, 96, 97, 98, 98, 100,    101,    102,    102,    102,    102,    104,    104,    104,    107,    107,    109,    110,    110,    110,    111,    112,    113,    113,    114,    115,    118,    118,    118,    120,    124,    131,    137,    137,    139,    145,    158,    160,    162,    165,    169,    177,    179,    180)    
dist <- dnorm(my_data,mean=mean(my_data), sd(my_data))
qplot(my_data,dist,geom="line")+xlab("x values")+ylab("Density")+ ggtitle("cool graph Distribution") + geom_line(color="black")

и результат:

введите здесь описание изображения

Я собираюсь добавить больше данных в ggplot2:

  1. значение
  2. скажем, у меня есть образец: 80. Я хотел бы провести линию между значениями x, пересекающую график.
  3. Разделите график на части по 2 сигмам (а может и по 3) и добавьте регион (пример на графике ниже показывает 4 региона: необычно низкая цена, отличная цена и так далее).

Спасибо за любые указатели!

желаемый результат: введите здесь описание изображения


person adhg    schedule 15.04.2015    source источник


Ответы (1)


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

qplot(my_data,dist,geom="line") + 
    xlab("x values") + 
    ylab("Density") + 
    ggtitle("cool graph Distribution") + 
    geom_line(color="black") +
    geom_line(stat = "hline", yintercept = "mean", colour = "blue") +
    geom_line(stat = "vline", xintercept = "mean", colour = "red")
person Konrad    schedule 15.04.2015