2017-02-19 37 views
0

我想知道如何得到最左邊的結束最右邊的結束arrows()在我情節完全匹配的最左端的最右端的其我的X-AXIS位於其下方(如果可能,可以讀取箭頭兩端的值(在舍入誤差內)離開X軸在它下面)?匹配箭頭的兩端與x軸R情節

這裏是我的R代碼裏面沒有成功:

ci <- c(0.09253967, 0.48434172) 

plot(1, 1, ty="n" ,ann=F, yaxt="n", bty="n", xlim=c(ci[1], ci[2]), ylim=c(0, 1), xaxs="i") 

arrows(ci[1], .01, ci[2], .01, code=3, lwd=2, angle = 90, length = .08) 

回答

1

一種方法:控制,其中axis地方蜱:

ci <- c(0.09253967, 0.48434172) 
plot(1, 1, ty="n" ,ann=F, yaxt="n", bty="n", xlim=c(ci[1], ci[2]), ylim=c(0, .3), xaxt="n") 
axis(side = 1, at = ci) 
arrows(ci[1], .01, ci[2], .01, code=3, lwd=2, angle = 90, length = .08) 

...但蜱在不 - 漂亮的位置(儘管你可以輕鬆控制這一點)。

另一種方法:查找認爲是正確的軸蜱當前情節:

newx <- range(axTicks(side = 1)) 
newx 
# [1] 0.1 0.4 

# ... your plotting code ... 
arrows(newx[1], 0.02, newx[2], 0.02, code=3, lwd=2, angle=90, length=.08) 
+0

你可以用'round'控制數*和*他們的準確位置,如' ci < - round(ci,1)';或者可以使用'sprintf'或'format'來控制顯示數字的精度(可能與實際位置有細微的差別),並將這些修改後的精度字符串作爲「axis(...,labels =)」 。 – r2evans

+0

嘗試'mtext(「hello」,side = 1,line = 2)''。 'axis'不允許以'xlab =「xyz」'的方式添加標籤,並且使用'xaxt =「n」',您告訴系統中的繪圖侏儒您將處理所有相關的事情顯示該軸。所以'mtext'起作用。 – r2evans