[(株)数理システム]

(S-PLUS) S-PLUS mini course 第19回


S-PLUS mini course の19回目をお届けします。

11/28に、虎ノ門パストラルで第3回S-PLUS ユーザーカンファレンスが開催されました。当日は200人以上の方にお越しいただきました。
ありがとうございました。
また、講師の皆様には大変熱の入ったご講演をしていただき、時間オーバーするぐらい質問が飛び交うほどでした。
今回は学生研究奨励賞を設け、ポスターセッションも同時に開催いたしましたが、こちらもすばらしい研究が多く、いずれも甲乙付けがたいものでした。大勢の方にポスターセッションをご覧いただきました。こちらは改めて、S-PLUS ホームページなどに発表の場を設けたいと存じます。
当日の締めくくりは懇親会でしたが、こちらも大勢の方にご参加いただき、和気あいあいとしながらも、S-PLUS の利用についてするどい質問が飛び交う、有意義な場になったのでは、と思っています。
また来年以降も開催を続けますので、ぜひ、ご参加ください!

さて、前回は Trellis グラフを画面上に2つ以上並べて書くときにはどうすればよいか、あるいは、画面の色を変えるにはどうすればよいかについての話でした。
今回は「グラフを自動的にファイルに保存したい!」がテーマでした。

これは、S-PLUS for Windows と UNIX/Linux では異なります。
まず、S-PLUS for Windows についてです。

****** S-PLUS for Windows におけるグラフの保存 *******
グラフの保存方法には2通りあります。

  1. S-PLUS グラフシート形式として保存
  2. イメージファイルとして保存

1. は拡張子 .sgr がつきます。グラフを開いて見るためには、S-PLUS が必ず必要になります。また、そのグラフを描画するのに使われているデータも必要になりますので、注意が必要です。
もし、データを修正したら、その修正がグラフに反映されます。

2. はgif, jpeg, bmp, wmf など、多くの種類のイメージファイルをサポートしています。これらを使って、Word にグラフを貼り付けたり、エクスプローラなどで見たり、が可能です(S-PLUS は必要ではありません)。
ただ、そのファイルと元のS-PLUS のデータはリンクされていませんから、もし、S-PLUS でデータを修正したとしても、グラフには反映されません。

いずれも、メニューから実行されている方が多いと思いますが、コマンドからの実行も可能です(方法は異なります)。

1. の場合

guiSave( "GraphSheet", Name = "GSD2",
            FileName = "ファイル名.sgr")

です。グラフの名前を確認するのに、いちいち、とまって見なくてはならないじゃないの、という方には、あらかじめ自分でファイル名を指定してから描画することも可能です。

graphsheet(Name="test")
plot(...)
guiSave( "GraphSheet", Name = "test",
            FileName = "ファイル名.sgr")

とします。

2. の場合、関数 graphsheet を実行した時点で、JPEG などのファイルにしてしまうことが可能です。

graphsheet(format="JPG",file="test.jpg")
# グラフをウィンドウではなく、ファイルに出力する
plot(...)
# 作図
dev.off()

最後のdev.off がないと、ファイルに終了のコマンドが伝わりません。必ず実行してください。

***** UNIX/Linux 版 S-PLUS におけるグラフの保存 ******
UNIX/Linux 版 S-PLUS の場合は、2の方法だけになります。
graphsheet ではなく、postscript あるいはバージョンによっては
pdf.graph という関数を使ってください。例えば

pdf.graph(file="test.pdf")
plot(...)
dev.off()


となります。
以上で長かった「グラフ編」はおしまいです。
次回からは「統計解析編」です。
お楽しみに!

また、ご質問、ご要望、こういうトピックを取り上げてほしい、というご意見がございましたら、どうぞお知らせください。

----------------------------------------------------------------

? お問い合わせ/資料請求はお気軽に。
(株)数理システム《S-PLUS》グループ <splus-info@ml.msi.co.jp>