データセットpressureを使った例

#最も基本のplot関数
#xの値のベクトル、yの値のベクトルを指定し、また引数にtypeを指定する:type="l"
plot(pressure$temperature, pressure$pressure, type="l")

#グラフに点や線を追加することもできる
plot(pressure$temperature, pressure$pressure, type="l")
points(pressure$temperature, pressure$pressure)
lines(pressure$temperature, pressure$pressure/2, col="red")
points(pressure$temperature, pressure$pressure/2, col="red")

#次にgglpt2パッケージを使う
library(ggplot2)

#まずはqplot関数を使ってみる。 ラインの指定は、geom="line" による
qplot(temperature, pressure, data=pressure, geom="line")

#次も同じ結果
#ggplot関数を使っみる。ただしラインの色に赤を指定する
ggplot(pressure, aes(x=temperature, y=pressure)) + geom_line(col="red")

#折れ線と点の両方を描画する
#まずはqplot関数による
qplot(temperature, pressure, data=pressure, geom=c("line", "point"))

#次にggplot関数による
#ggplotは描画するグラフのレイヤを"+"により重ねてゆく方法になっている
ggplot(pressure, aes(x=temperature, y=pressure)) + geom_line() + geom_point(col="blue")

#パイプ演算子" %>% "を使ったスマートで分かり易いコーディング方法

#パイプ演算子" %>% "を使うためのパッケージのロード
#install.packages("dplyr") は実行済みとする
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
#パイプ演算子" %>% " の利用により、関数が対象とするデータを明確化することできる。
#さらに、その関数による演算結果を次の関数への入力データとして、パイプ演算子を使って渡すことができる
#パイプ演算子は複数、利用することができる
#また、その最終結果は、代入演算子" <- " によりオブジェクトへ代入することができる

#pressureデータセットを ggplotの描画データとして入力した例
pressure %>% ggplot(aes(x=temperature, y=pressure)) + geom_line() + geom_point(col="blue")

#irisデータセットのsummary関数への入力
iris %>% summary()
##   Sepal.Length    Sepal.Width     Petal.Length    Petal.Width   
##  Min.   :4.300   Min.   :2.000   Min.   :1.000   Min.   :0.100  
##  1st Qu.:5.100   1st Qu.:2.800   1st Qu.:1.600   1st Qu.:0.300  
##  Median :5.800   Median :3.000   Median :4.350   Median :1.300  
##  Mean   :5.843   Mean   :3.057   Mean   :3.758   Mean   :1.199  
##  3rd Qu.:6.400   3rd Qu.:3.300   3rd Qu.:5.100   3rd Qu.:1.800  
##  Max.   :7.900   Max.   :4.400   Max.   :6.900   Max.   :2.500  
##        Species  
##  setosa    :50  
##  versicolor:50  
##  virginica :50  
##                 
##                 
## 
#irisデータセットから、 Species="setosa"をだけを選び、Sepal.Lengthと Sepal.Widthの関係を散布図で描画する。
#この結果を一旦、fig1オブジェクトに代入する
fig1 <- iris %>% subset(Species =="setosa") %>% ggplot(aes(x=Sepal.Length, y=Sepal.Width)) + geom_point() 

本日の課題

課題の2つの図をMoodleに提出しなさい。

提出方法は、Rmdファイルをknitし、HTML形式のファイルをMoodleに貼り付けること。

課題1:fig1(Fig.1のタイトルを追加)を描画する

課題2:さらに回帰直線とFig.2 のタイトルを重ね合わせた図を fig2 を描画する

タイトル "Fig.1" の(レイヤ)追加は、labs(title="Fig.1")により、回帰直線の(レイヤ)追加は、geom_smooth(method="lm") により可能
fig1 + labs(title="Fig.1")

fig2 <- fig1 + geom_smooth(method ="lm")

fig2 + labs(title="Fig.2")