2017-01-21 7 views
0

私はthis exampleという2つのファセット線図を作成しようとしています。私の問題は、x軸上に希望の変数を表示するようにデータを配置することです。私が使用したい小さなデータセットです。2つの端面R線図のデータの整列

Study,Cat,Dim1,Dim2,Dim3,Dim4 
Study1,PK,-3.00,0.99,-0.86,0.46 
Study1,US,-4.67,0.76,1.01,0.45 
Study2,FL,-2.856,4.15,1.554,0.765 
Study2,FL,-8.668,5.907,3.795,4.754 

このデータフレームから線グラフを描画するために、次のコードを使用しようとしました。

plot1 <- ggplot(data=dims, aes(x=Cat, y=Dim1, group=Study)) + geom_line()+ geom_point() + facet_wrap(~Study) 

明らかなように、1本の値列を使用して線を描くことはできます。私はDim1、Dim2、Dim3、Dim4をx軸上に置いて、このデータの配置ではできないようにします。 [運がない(Dim1、Dim2、Dim3、Dim4) おそらく解決策は、テーブルを転置することですが、私はファセット(上記の表で学習)と色(Catは上記テーブルの中の分類)を再現することはできません。この問題を解決するには?

答えて

0

ソリューションは非常に簡単でした。ただ、ビットを考える必要があった、再配置されたデータは、次のようになります。

Study,Cat,Dim,Value 
Study1,PK,Dim1,-3 
Study1,PK,Dim2,0.99 
Study1,PK,Dim3,-0.86 
Study1,PK,Dim4,0.46 
Study1,US,Dim1,-4.67 
Study1,US,Dim2,0.76 
Study1,US,Dim3,1.01 
Study1,US,Dim4,0.45 
Study2,FL,Dim1,-2.856 
Study2,FL,Dim2,4.15 
Study2,FL,Dim3,1.554 
Study2,FL,Dim4,0.765 
Study2,FL,Dim1,-8.668 
Study2,FL,Dim2,5.907 
Study2,FL,Dim3,3.795 
Study2,FL,Dim4,4.754 

をこのコードでそのR生産意欲結果の後。

plot1 <- ggplot(data=dims, aes(x=Dim, y=Value, colour=Cat, group=Cat)) + geom_line()+ geom_point() + facet_wrap(~Study) 
+0

、プログラム的にこれを行う ''(DAT、薄暗い、バリュー、-Study、-CAT)を収集する使用します。 – r2evans

1

これを試すことができます:

library(tidyr) 
library(dplyr) 
gather(dims, variable, value, -Study, -Cat) %>% 
ggplot(aes(x=variable, y=value, group=Cat, col=Cat)) + 
    geom_point() + geom_line() + facet_wrap(~Study) 

enter image description here

関連する問題