2013-12-01 7 views
11

Я хотел бы добавить горизонтальные линии к существующему графику, но мне хотелось бы только построить линию для определенных интервалов оси x.Добавить горизонтальную линию в ggplot() для заданного интервала оси x

Например, я хотел бы иметь горизонтальную линию при X = 1: 5 и y = 50.

Я хотел бы использовать existing_plot+geom_hline(yintercept = 50)

ли также можно указать значения х каким-то образом?

ответ

20

Вы можете использовать geom_segment() добавить отрезок линии с собственным определенной начальной и конечной точек (не только горизонтальные/вертикальные линии).

ggplot(mtcars,aes(mpg,qsec))+geom_point()+ 
    geom_segment(aes(x=15,xend=20,y=18,yend=18)) 

enter image description here

5

Вы можете использовать geom_line:

qplot(x=x,y=y,data=data.frame(x=1:10,y=100:1)) + 
    geom_line(data=data.frame(x=1:5,y=50)) 

enter image description here

+0

Я получаю сообщение об ошибке: Ошибка в Eval (выражение, Envir, Enclos): объект «значение» не найден исходные данные, которые я замышляет хранится в расплавленном переменной – ghb

+0

Вы должны этот пример с правой ** эстетикой ** Не использовать его как есть. Лучше прочитать некоторые учебники ggplot2 и понять, как он сопоставляет переменные данных для построения параметров. – agstudy

+0

эстетика должна быть правильной, исходный график - с x = 1: 10, y = 0: 1, я использовал existing_plot + geom_line (data = data.frame (x = 1: 5, y = 0.6)), am I что-то не так? – ghb

Смежные вопросы