2017-08-09 141 views
2

我想添加一个垂直缩放到基本的手动绘图。我的剧本是写在这个格式:向ggplot添加一个垂直线条

ggplot(df, aes(x = df$xx) + 
geom_point(aes(y = df$yy)) 

其中df是一个数据框,看起来像这样:

xx   yy   zz  xz 
1 -10  0.0000000 0.000000 0.0000000 
2 -9  0.8995455 1.371060 0.7044286 

我已经试过scalebar功能raster无济于事。我找到的每个解决方案都与地图相关,这里不是这种情况。我错过了非常明显的东西吗?谢谢。

情节

enter image description here

红线是的例子(粗)在涂料中添加,以显示我所需要的,只是一个标准的黑线就足够了。

+0

什么是你想要的比例尺显示 - 你要映射另一个变量,例如颜色(无关不要使用DF $ XX/DF $ YY在ggplot,只是用XX或YY) – user20650

+0

例如' ggplot(mtcars,aes(mpg,wt,color = disp))+ geom_point()' – user20650

+0

我需要它来显示垂直高度,具体而言,我需要一条距离为60的线(沿着y轴)。感谢您的提示,在这里完成新手! – Emma

回答

1

在ggplot中,您可以使用annotate()将元素添加到您的图中。你想要的比例尺看起来像一个错误栏,所以我用它。此外,我稍微更改了代码,因此您不需要在geom_point()中提供aes映射。

library("ggplot2") 

df = data.frame(xx=c(1,2,3,4,5), yy=c(2,1,6,7,8)) 

ggplot(df, aes(x = xx, y = yy)) + 
    geom_point() + 
    annotate("errorbar", x=0, ymin=4, ymax=7, color="red")