カメヲラボ

主にプログラミングとお勉強全般について書いてます

Rプログラミング入門(4)

グラフを描いてみよう(1)

単純な2次間数のグラフ

とりあえず、R Consoleを使って単純な2次関数のグラフに挑戦してみましょう。グラフとは言っても、関数の式から得られた点の座標をプロットしていきます。そこで、まずはx座標のリストを用意しておきましょう。
R Consoleを開いて、xの値をセットします。

> x <- c( -10:10 )

次に、2次関数"y=x^2"にxを代入し、対応するyのリストを得ます。

> y <- x^2

これでxとyのセットが出来たので、plot関数を使って点を描きます。

> plot( x, y )

点を書いただけなので、あまりグラフっぽくありません。点と点を、線で結んでみます。

> plot( x, y, type="b" )

type="b"と指定すると、点と点の間を直線で結んでくれます。点が邪魔な場合は、以下の様にtype="l"としておきましょう。

> plot( x, y, type="l" )

他のパラメータについてはhelp(plot)で確認しておいてください。

もうちょっと見た目を変えてみる

par関数というのを使うと、グラフの見た目を変化させることができます。plot関数の前に、par関数を実行してみてください。

> par( pch=18, bg="black", col="white" )
> plot( x, y )

pchというのは、マークの種類です。数字を変えると色々なマークが出てきますが、文字で指定も出来るので、

> par(pch="あ")
> plot( x, y )


なんてこともできます。どんな文字でもOKということは無いみたいですが、大体大丈夫っぽいです。

複数のグラフを重ねて描く

par関数には、以前のグラフを残すか新しく描き直すかを選択するパラメータがあります。説明前に、以下のプログラム(prog4-0.R)を用意しておきます。

x <- ( -10:10 )
y1 <- x^2
y2 <- -0.5*x^2
par( new=FALSE )
plot( x, y1, type="l", ylim=c(-50,100), ylab="" )
par( new=TRUE )
plot( x, y2, type="l", ylim=c(-50,100), ylab="" )

これを実行すれば、以下のようなグラフが表示されます。

xの値は共通なので、xの変域(xlim)とx軸のラベル(xlab)は特に変更しません。y1,y2の変域、変数名は異なるので、yの変域(ylim)とy軸のラベル(ylab)を同じものにしておきます。そうしないと文字とか数字が重なって、よく分からなくなってしまいますので…。

ところで、par関数のnewというパラメータって、newってくらいなんだからTRUEとFALSE逆じゃね?と思うのですが(;´д`)