簡體   English   中英

如何用ggplot畫幾條線?

[英]How to draw several lines with ggplot?

這段代碼畫了2行

dd = list(data.frame(rates=1:5), data.frame(rates=2:6), data.frame(rates=3:7))
library(ggplot2)
library(zoo)
g = ggplot(, aes(1:5))
g <- g + geom_line(aes(y = dd[[1]]$rate[index(dd[[1]]) <= 5]), colour="#000000")
g <- g + geom_line(aes(y = dd[[2]]$rate[index(dd[[2]]) <= 5]), colour="#000000")
g

在此處輸入圖片說明

但是這段代碼畫了1行(最后i,2)

dd = list(data.frame(rates=1:5), data.frame(rates=2:6), data.frame(rates=3:7))
g = ggplot(, aes(1:5))
foreach (i = 1:2) %do% {
  g <- g + geom_line(aes(y = dd[[i]]$rate[index(dd[[i]]) <= 5]), colour="#000000")
}
g

在此處輸入圖片說明

r小提琴示例

為什么以及如何解決?

正如我提到的,我認為您應該簡單地停止使用ggplot2

g = ggplot(, aes(1:5))
foreach (i = 1:2) %do% {
  g <- g + geom_line(data = dd[[i]],aes(y = rates), colour="#000000")
}
g

就像您的第一個示例一樣,這將產生兩行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM