Im複数のプロットを1つの図に並べるにはmultiplot関数(http://www.cookbook-r.com/Graphs/Multiple_graphs_on_one_page_(ggplot2)/)を使用しようとしています。 http://rstudio-pubs-static.s3.amazonaws.com/2852_379274d7c5734f979e106dcf019ec46c.htmlから取った次の例では、正常に動作します:ggplotとmultiplotは常に同じ内容を表示します
plots <- list() # new empty list
for (i in 1:6) {
p1 = qplot(1:10, rnorm(10), main = i)
plots[[i]] <- p1 # add each plot into plot list
}
multiplot(plotlist = plots, cols = 3)
しかし、私のコードはありません:
dataset <- data.frame(x=c(1,2,3,4,5,6), y1=c(1,4,6,8,10,12), y2=rnorm(6))
plots <- list()
for (i in 1:2){
plots[[i]] <- ggplot(dataset) + geom_point(aes(x=dataset[,1], y=dataset[,i+1]))
}
multiplot(plotlist = plots, cols=2)
はどういうわけか、それがために、プロットオブジェクトがリストに割り当てられているかに関係しています私がするとき
a <- ggplot(dataset) + geom_point(aes(x=dataset[1], y=dataset[2]))
b <- ggplot(dataset) + geom_point(aes(x=dataset[1], y=dataset[3]))
multiplot(a,b)
すべてが期待どおりに動作します。またmultiplot(plotlist=list(a,b))
も問題なく動作します。
私は、その相違点を認識できません。誰も助けることができますか?
多くのおかげで、
Enno
ありがとう、それはトリックをやったようでした!私は問題の根本的な原因を理解していませんが。 – mcenno
説明は@ Janna Maasが理にかなっているようです! – timfaber