2017-06-12 10 views
1

私は2つの異なる種類のプロットがあり、その上にストリップを一緒に並べる必要があります。私は格子パッケージのみを使用しなければならないので、ggplot2はオプションではありません。 格子パッケージから単一のドットプロットにストリップを追加

おかげ

私はここのサンプルコードがあります。

library(lattice) 
library(latticeExtra) 
X<-rnorm(100) 
Y<-rnorm(100) 
S<- rnorm(500) 
df1<-data.frame(X,Y,S) 

p1<-dotplot(X~Y, data=df1) 

p2<-dotplot(X~S, data=df1) 

#combining plots 
c(p1,p2) 
+2

データを並べ替えて、数式で標準の '|'表記を使用して、異なるパネルを作成することもできます。 'dotplot(X〜value | variable、data = reshape2 :: melt(df1、id.vars =" X "))'のようなものです。 – Henrik

+0

おかげさまで、私はこの2つのプロットのために2つの異なるタイプのグループを持っているので、素晴らしい提案ができましたが、私の並べ替えは本当に役立たないでしょう –

答えて

0

コメントで述べたように、あなたは変数YSをスタックし、それぞれの値から何が来るのか、変数を示す追加の列を作成する必要があります。

> df2 <- reshape(df1, varying=2:3, v.names='Value', timevar='Var', times=c('Y','S'), direction='long') 
> head(df2) 
      X Var  Value id 
1.Y -2.3720450 Y 2.3965643 1 
2.Y 0.8082862 Y 0.0215850 2 
3.Y 0.3774736 Y -0.6385176 3 
4.Y 0.7161986 Y -0.3908185 4 
5.Y -0.3633583 Y -0.9611222 5 
6.Y -0.3484920 Y 3.3387813 6 

その後

> dotplot(X ~ Value | Var, data = df2) 

はあなたが欲しいものを行う必要があります。

関連する問題