データフレームの各列をggplot2の別のレイヤにプロットしたいと思います。層によってプロット層を構築 はうまく機能:forループを使ってggplotにレイヤーを追加する方法
df<-data.frame(x1=c(1:5),y1=c(2.0,5.4,7.1,4.6,5.0),y2=c(0.4,9.4,2.9,5.4,1.1),y3=c(2.4,6.6,8.1,5.6,6.3))
ggplot(data=df,aes(df[,1]))+geom_line(aes(y=df[,2]))+geom_line(aes(y=df[,3]))
は、単一の関数を使用してのもので、利用可能なすべての列を描画する方法はありますか?
私は、このようにそれを実行しようとしましたが、それは動作しません:
plotAllLayers<-function(df){
p<-ggplot(data=df,aes(df[,1]))
for(i in seq(2:ncol(df))){
p<-p+geom_line(aes(y=df[,i]))
}
return(p)
}
plotAllLayers(df)
ありがとう、これは私の質問に答える。それは本当に役立ちます。 reshape2は非常に便利です。私は長いフォーマットに慣れなければならないと思う。 – new2R