3

比較的少数の参加者に基づいて混合モデルから得ている統計のいくつかについて、より良い感じを得るために、ブートストラップ手順を実行しています。2 つの条件について、ブートストラップ平均のヒストグラムをプロットしています (データへのリンク)。

問題は、ヒストグラムを重ねて (1 つのファセット/パネル) プロットすると、B 処理の明確なバイモーダル ヒストグラムが表示されますが、各処理のファセットを使用してプロットすると、このバイモーダル ピークが消えることです。

p <- ggplot(data=bstr3, mapping=aes(x=m, fill=treatment)) +
  geom_histogram(binwidth=1, alpha=0.4) + 
  scale_fill_manual(values=c('A'='red', 'B'='blue')) 
p + coord_cartesian(xlim=c(-60, 0))

ここに画像の説明を入力

ただし、処理をファセットとしてプロットすると、バイモーダル ピークが消えます。

p + facet_wrap(~treatment, ncol=1) + coord_cartesian(xlim=c(-60, 0))

ファセットプロット

ggplotの本とインターネットに基づいて、これが意図されたものなのか、それとも潜在的なバグなのか/その理由を理解できません。バグをほのめかすこの質問を見つけましたが、投稿は1年前で、Rとggplot2の最新の更新があります。

R version 3.0.1 (2013-05-16)
Platform: x86_64-w64-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=English_United States.1252 
[2] LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] graphics  grDevices utils     datasets  stats     methods   base     

other attached packages:
[1] plyr_1.8             reshape2_1.2.2       knitrBootstrap_0.6.5
[4] markdown_0.6.1       knitr_1.3            ggplot2_0.9.3.1     

loaded via a namespace (and not attached):
 [1] colorspace_1.2-2   dichromat_2.0-0    digest_0.6.3       evaluate_0.4.4    
 [5] formatR_0.8        grid_3.0.1         gtable_0.1.2       labeling_0.2      
 [9] MASS_7.3-27        munsell_0.4.2      proto_0.3-10       RColorBrewer_1.0-5
[13] scales_0.2.3       stringr_0.6.2      tools_3.0.1       
4

1 に答える 1

11

によって使用されるデフォルトのposition調整geom_histogramposition_stack(ヒストグラムの奇妙なデフォルトのようです) です。あなたがしたいposition_identity

set.seed(42)
DF <- data.frame(x=rnorm(1000,5,0.5),y=rnorm(1000,7,1))
library(reshape2)
DF <- melt(DF)

library(ggplot2)
p <- ggplot(data=DF, mapping=aes(x=value, fill=variable)) +
  geom_histogram(binwidth=1, alpha=0.4) + 
  scale_fill_manual(values=c('x'='red', 'y'='blue')) 
print(p)

ここに画像の説明を入力

p <- ggplot(data=DF, mapping=aes(x=value, fill=variable)) +
  geom_histogram(binwidth=1, alpha=0.4, position="identity") + 
  scale_fill_manual(values=c('x'='red', 'y'='blue')) 
print(p)

ここに画像の説明を入力

于 2013-07-19T07:12:32.277 に答える