.
■Rコマンダーによる3次元散布図の作成
○はじめに
この頁では「ExcelでできることはExcelで行う」「Excelでできないことは他のソフトによる」という考え方で書く.
Excel(2010年現在,Excel2002,2007,2010が手元にある)では2次元の散布図は作成できるが,3次元の散布図はメニューにない.また,3次元棒グラフや等高線表示はあるがデータ数が多いときにこれらのグラフではやや見づらい.そこで右図1のような3次元散布図をRコマンダーから描くことを考える.
この3次元散布図では見る角度によって平板的な見え方になるのを防ぐために,近くのものはやや大きめに遠くのものはやや小さめに表示されている.また,右図のように個々のマーカーを右クリックして囲むと,それがどのデータを表しているのかを整理番号で表すことができる. |
図1 |
○利用するデータ
Rコマンダーのパッケージ内のデータセットの中に,右の表1のような木の胴回り(Girth),高さ(Height),容積(Volume)のデータがあるのでこれを利用する.
【手順】
- Rを起動する.
- Excel2007の場合,アドイン→RExcel→Start R
- Excel2002の場合,RExcel→Start R
- Rコマンダーを起動する.
- Excel2007の場合,アドイン→RExcel→Rcommander→with separate menus
- Excel2002の場合,RExcel→Rcommander→with separate menus
- パッケージ内のデータセットのうちtreesをインポートする.
- 【以下はRコマンダーのメニュー】
- データ→パッケージ内のデータ→アタッチされたパッケージからデータセットを読み込む.
- 右図2のようにdatasetsを選択し,treesをダブルクリックする.
- 3次元散布図を表示する.
- グラフ→3次元グラフ→3次元散布図
- ここでは例として,目的変数をVolumeに,説明変数をGirth,Heightに選択するものとする.右図3のように選択すると単純ですっきりしたグラフになる.(表面の当てはめを選択すると回帰平面が図示される.「マウスでドラッグしてデータ情報を表示」にチェックを入れておくと,グラフ表示後に個々のマーカーにデータラベルを付けることができる.)
- 表示されたグラフをドラッグして見やすい角度,大きさにする.
- 幾つかの点について,それがどの元データに対応しているかを表示させる.
- (先の4のステップにおいて「マウスでドラッグしてデータ情報を表示」にチェックを入れた場合のみこれが可能になる)
- 気になるマーカーをマウス右ドラッグで囲むとそのデータの整理番号(レコード番号=何個目のデータであるかということ)が数字として表示される.
- なお,このステップに入っているときはマウス右クリックして「終了」の相図を出すまではグラフを画像ファイルに保存するメニューが灰色表示になり使用できない.
- 出力されたグラフを画像ファイルとして保存する.
- (6で述べたように「マウスでドラッグしてデータ情報を表示」を選んでいるときは,マウス右クリックしてそのステップを終了させていなければならない.)
- グラフ→3次元グラフ→グラフをファイルに保存(Png形式で保存できる.)
(他のファイル形式例えばgifやjpgで保存しようとすれば,表面的には保存できるが実際にはpng形式になるので矛盾が生じる.もし,gifやjpg形式のファイルが必要ならば,一旦png形式で保存してから画像処理ソフトで変換するのが安全.)
|
表1
Girth |
Height |
Volume |
8.3 |
70 |
10.3 |
8.6 |
65 |
10.3 |
8.8 |
63 |
10.2 |
10.5 |
72 |
16.4 |
10.7 |
81 |
18.8 |
10.8 |
83 |
19.7 |
・・・ |
・・・ |
・・・ |
11 |
75 |
18.2 |
11.1 |
80 |
22.6 |
図2
図3 |
○3次元層別散布図の作成
Rでは右図4のように3次元の層別散布図(系統別に色分けした散布図)を作成して,それらの相違点を分かりやすくグラフに示すことができる.
ここではRコマンダーのパッケージ内のデータセットの中にあるiris(アヤメ)のデータを用いて解説する.
このデータは,ガク片の長さ(Sepal.Length),ガク片の広さ(Sepal.Width),花弁の長さ(Petal.Length),花弁の広さ(Petal.Width),品種(Species)の5つのフィールド(変数)からなる150件のデータで構成されている.
Sepal.Length |
Sepal.Width |
Petal.Length |
Petal.Width |
Species |
5.1 |
3.5 |
1.4 |
0.2 |
setosa |
4.9 |
3 |
1.4 |
0.2 |
setosa |
4.7 |
3.2 |
1.3 |
0.2 |
setosa |
4.6 |
3.1 |
1.5 |
0.2 |
setosa |
6.6 |
2.9 |
4.6 |
1.3 |
versicolor |
5.2 |
2.7 |
3.9 |
1.4 |
versicolor |
7.1 |
3 |
5.9 |
2.1 |
virginica |
6.3 |
2.9 |
5.6 |
1.8 |
virginica |
6.5 |
3 |
5.8 |
2.2 |
virginica |
※ RとRコマンダーはすでに起動されているものとする.
- パッケージ内のデータセットのうちirisをインポートする.
- 【以下はRコマンダーのメニュー】
- データ→パッケージ内のデータ→アタッチされたパッケージからデータセットを読み込む.
- datasetsを選択し,(単純アルファベット順でなく大文字・小文字の順なので後の方にある)irisをダブルクリックする.
- 3次元散布図を表示する.
- グラフ→3次元グラフ→3次元散布図
- ここでは例として,目的変数をSepal.widthに,説明変数をPetal.Length,Petal.Widthに選択するものとする.(表面の当てはめを選択すると図5のように回帰平面が図示される.「マウスでドラッグしてデータ情報を表示」にチェックを入れておくと,グラフ表示後に個々のマーカーにデータラベルを付けることができる.)
- 層別プロットのボタンを押す.
- 以下は上記の3次元散布図の場合と同様
|
図4
図5 |