No.14231 Re: Stacked histogram 【青木繁伸】 2011/01/26(Wed) 17:28
自分でプログラムを描くのもお勧めです。
出来合いの barplot 関数を使うと以下のように簡単にできます。
もう少しお化粧をすれば,十分使えるでしょう。描画するのは,4群の積み上げヒストグラムです。25〜 30〜 35〜 40〜 45〜 50〜 55〜 60〜 65〜 70〜 75〜 80〜 85〜 90〜
A 1 3 17 29 48 42 21 7 0 0 0 0 0 0
B 0 0 1 16 34 81 103 74 24 9 1 0 0 0
C 0 0 0 0 3 19 48 104 97 59 8 3 1 0
D 0 0 0 0 0 1 5 14 32 44 35 9 4 3
x <- matrix(c(
1, 3, 17, 29, 48, 42, 21, 7, 0, 0, 0, 0, 0, 0,
0, 0, 1, 16, 34, 81, 103, 74, 24, 9, 1, 0, 0, 0,
0, 0, 0, 0, 3, 19, 48, 104, 97, 59, 8, 3, 1, 0,
0, 0, 0, 0, 0, 1, 5, 14, 32, 44, 35, 9, 4, 3), byrow=TRUE, ncol=14)
colnames(x) <- paste(1:14*5+20, "〜", sep="")
rownames(x) <- LETTERS[1:4]
print(x)
barplot(x, space=0, names.arg=colnames(x), legend.text=rownames(x), ylim=c(0, 200))
No.14232 Re: Stacked histogram 【T.W.】 2011/01/26(Wed) 22:21
ありがとうございます.
重ねて質問させていただきます.
度数ではなく生データから積み上げヒストグラムを作成したいと考えています.
(1) 2群のヒストグラム(http://aoki2.si.gunma-u.ac.jp/R/hist2.html)にあるbeside=TRUEをFALSEとすれば積み上げになるのでしょうか?
(2) 度数分布表(http://aoki2.si.gunma-u.ac.jp/R/dosuu-bunpu.html)では階級幅をwで指定していますが,2群のヒストグラム(http://aoki2.si.gunma-u.ac.jp/R/hist2.html)のbrksがこれに当たるのでしょうか?
No.14233 Re: Stacked histogram 【青木繁伸】 2011/01/26(Wed) 22:30
丸付き文字は使わないで!と,お願いしています。
> beside=TRUEをFALSEとすれば積み上げになるのでしょうか?
やってみればすぐ分かることですね。
beside=FALSE のほかに space=0 としないと変なところに隙間が空きます。
> 階級幅をwで指定していますが,... のbrksがこれに当たるのでしょうか
brks=NULL, # 階級分割点
とあるように,brks は階級の分割点をベクトルで与える事にしています
> 度数ではなく生データから積み上げヒストグラムを作成したい
上のような改造を行っても,2 群の積み上げヒストグラムしか描けません。というか,一般に k 群の積み上げヒストグラムを描けるようにするのは大変面倒です。
生データから度数分布表を作って barplot に渡すようにプログラムするのが良いでしょう。
No.14234 Re: Stacked histogram 【takahashi】 2011/01/27(Thu) 12:33
こういうのもありますよ。
http://had.co.nz/ggplot2/geom_histogram.html
http://had.co.nz/ggplot2/graphics/4ccbf1d33c70b87bc29b77c9e30e7870.png
No.14257 Re: Stacked histogram 【T.W.】 2011/01/28(Fri) 13:33
重ね重ねありがとうございます.
なんとかつくることができました.
>ggplot2
これも使ってみたのですが,binwidth=〜と設定すると群の色分けが上手くいかないようです.(階級の中で群ごと纏まらずまだら模様に・・・)
● 「統計学関連なんでもあり」の過去ログ--- 044 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る