2017-08-09 178 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")