我即將繪製R/ggplot2的優勢比,我想在X軸標籤的下面或旁邊添加兩個箭頭。一個指向左邊,一個指向右邊,表現出去/增加的影響力。我嘗試了很多東西,比如geom_path,geom_line,但沒有取得很大的成功。 這是我的代碼:R&ggplot2:如何獲取軸標籤下的箭頭?
forest <- function(d, xlab="Odds Ratio", ylab="Influencing variables"){
require(ggplot2)
p <- ggplot(d, aes(x=ordered(x, levels=rev(x)), y=y, ymin=ylo, ymax=yhi)) +
geom_pointrange() +
geom_segment(aes(x = 0, xend = 0, y= 1, yend= 2)) +
coord_flip() +
geom_hline(aes(yintercept=1), lty=2) +
ylab(xlab) +
xlab(ylab) +
scale_y_log10()
return(p)
}
##Test Data
data <- data.frame(x = c("A","B","C","D","E","F","G","H","I"),
y = c(1.782,0.136,0.978,0.645,0.518,1.474,0.855,0.673,0.369))
data <- transform(data, ylo = (0.719,0.046,0.945,0.295,0.188,0.577,0.407,0.310,0.145),
yhi = c(4.420,0.398,1.012,1.411,1.424,3.768,1.798,1.460,0.940))
forest(data)
增加一條線像 geom_line(AES(X = 1),箭頭=箭頭(長度=部(0.15, 「CM」)),顏色= 「黑」,大小= 1) 帶來一些箭頭,但它們與我的原始數據相沖突。
在此先感謝您的解決方案,幫助或提示!
馬克
感謝您的幫助!這讓我更接近我需要的東西。我的意圖是在「y」下繪製這兩個箭頭。但也許這就夠了。 – Marc
@Marc - 在繪圖區域之外繪製東西在技術上是可行的,但是很複雜,要求你亂用'grid'包和視口。我經常告訴人們,對於像這樣的不尋常的自定義註釋,在像Illustrator這樣的圖像編輯器中,事實之後通常會更快/更簡單地修改圖像。 – joran