sidebarニュースの社会科学的な裏側インターネット上で話題になっている事件を、理論とデータをもとに社会科学的に分析。RSSAuthoruncorrelatedソフトウェア・エンジニア。Professional。Programmer。S!アプリ対応ミニゲームを配布中。Blogger.2013年7月8日月曜日Rでグラフを作るという事はCheckTweetPocketグラフ作成作業を通して統計解析システムのRの学習をすると良いような話を見かけたのだが、ちょっと無理があるかも知れない。Excelでも同じ面もあるが、Rのプロットを使えるようにするには、それなりの手間隙がかかるからだ。妙に多彩な色のグラフを自動では作らないが、最初は簡素すぎてどうすればいいか困る。11個の観測データを単純にRでプロットすると、以下のようなグラフになってしまう。作った本人には良いのだが、他人には何だか分からない。TeXやWordで使う事を意識して、余白を圧縮してみよう*1。タイトルや出所などを入れる場合は、上下の余白をもっと取る必要があるが、今回は無しだ。縦軸が20から100になっているので、縦軸が0から60、横軸が0から100と明示的にplot関数のxlimitとylimitで指定する。四方を枠線に囲まれているのが好みではないので、plot関数の引数をaxes=FALSEして、縦軸と横軸の表示を消す。新たに縦軸と横軸を引きなおす。axis関数を二回使う事になる。目盛の幅が狭いので、縦軸を25、横軸を15間隔にする。axis関数にat引数を与える。縦軸と横軸の表示位置を詰める。axis関数にpos引数を与える。縦横の軸ラベルを書き込む。plot関数にxlabとylab引数を与える。縦横の目盛に単位をつける。axis関数のlabelsにsprintf関数で作った目盛ラベルを与える。縦横の数字が見づらいので、表示を水平にして、かつラベルを消す。plot関数のylabに空文字列を与えて、axis関数のlas引数に2を指定。データから回帰分析を行い、推定値をプロットする。回帰分析から推定値をつくり、そのグラフを重ねる。legend関数にマーカー種類pchと線種ltyの二つのパラメーターを与えるのだが、使わない場合は-1を入れている。legend関数にbty="n"を与える。凡例の「推定値」を推定式に置き換える。回帰分析の結果オブジェクトから係数をcoef関数で取り出し、sprintfで数式を作り、parseで表現式に変えた後に、legend関数に渡す。GOTHICにして、Cairoで出力をした。最終的なソースコードは、「Rのグラフに回帰分析の結果である数式を書き込む」と似たようなものになっている。それぞれの作業ごとに、コマンドのパラメーターを調べないといけない。ExcelのGUIで作業していく方が、楽は楽な気がする。途中で飽きてしまう可能性は少なく無い。上の例では、足し算と引き算と対数化で調整した後に回帰分析をしてニュートンの冷却の法則のパラメーターを推定したので、Excelでやるよりは楽な面もあるが、慣れる前に飽きるリスクは少なく無い。グラフ作成ツールとして利点があるかは、データ分析部分がどれぐらい複雑かにかかってくると思われる。TeX使いであれば、もちろん強くお勧めするわけだが。