2011-07-04 191 views
-1

我需要在R中的單個圖中繪製多條曲線,例如(a,b)和(a,c)在同一圖中,其中a,b和c是數據矢量。有人知道怎麼做嗎?謝謝。在R中繪製多重曲線

回答

3

可以使用plotlines命令做到這一點:

x <- 1:10 
y1 <- 1:10 
y2 <- 0.5 * y1 

#Set up the plot 
plot(range(x),range(c(y1,y2)),type="n") 
#Create the lines 
lines(x,y1) 
lines(x,y2) 
2

@ joran的建議是一個很好的一個。另一種選擇是cbinding的y - 值(上@ joran的例子工作)後使用matplot

matplot(x, cbind(y1, y2)) 

這有沒有找到範圍和自己相似的額外優勢。

檢查?matplot有很多選擇。

2

如果b和c是矩陣的列,matplot(和matlines用於添加進一步線)都可以使用,也:

a <- 1 : 10 
bc <- matrix (c (a, a/2), ncol = 2) 

matplot (a, bc, type = "l") 
2

GGPLOT2容易地以data.frame美學通過映射列支持這一點。我發現使用重塑(2)中的melt最容易爲這些任務生成適當格式的數據。 ggplot處理設置顏色,定義一個適當的圖例,以及許多使繪圖有時令人討厭的其他細節。例如:

library(ggplot2) 
dat <- melt(data.frame(x = x, y1 = y1, y2 = y2), id.vars = "x") 
ggplot(dat, aes(x, value, colour = variable)) + geom_line()