2017-09-11 69 views
0

讓我們說我們有x1=c(6,3,5,4,3,7)x2=c(5,2,1,7,5,2),然後我想創建這樣一個情節:如何創建幾行r中繪製

enter image description here

其中,X軸僅是X1和X2,Y軸是相應的值。我怎樣才能在R? THX

+0

「其中X軸僅是X1和X2,Y軸是相應的價值。」 這是什麼意思?它看起來像你想要X軸上的x1和x2值,那麼Y軸上會出現什麼?我想你應該給一些更多的信息,或者重寫你的問題。 – CCD

+0

@CCD,我的意思是X軸只有兩個值,包括x1和x2。 Y軸是在它們之間創建一條線的x1和x2的對應值。 – Cina

回答

4
plot(1, 1, xlim = c(1,2), 
    ylim = range(c(x1, x2)), type = "n", xaxt = "n") 
axis(side = 1, at = 1:2, labels = 1:2) 
segments(x0 = 1, y0 = x1, x1 = 2, y1 = x2) 
points(x = rep(1, length(x1)), y = x1) 
points(x = rep(2, length(x2)), y = x2) 

enter image description here

2

首先創建一個空的繪圖表面

plot(0,0, xlim=c(0,1), ylim=range(c(0, x1,x2)), type="n", xaxt="n") 
axis(side=1, at=c(0,1), labels=c("x1","x2")) 

然後加入繪製段

segments(0, x1, 1, x2) 

和任選點

points(rep(0, length(x1)), x1); 
points(rep(1, length(x2)), x2) 

如果你想使用ggplot,它會更有意義改變你的數據格式,雖然

dd <- data.frame(id=seq_along(x1), x1=x1, x2=x2) 
library(ggplot2) 
ggplot(dd) + geom_segment(aes(y=x1, yend=x2), x=0, xend=1)