12/2 散布図

それではirisのデータを使ってまずは散布図を描いてみましょう。まずはデータを読み込みます。

data.iris <- iris

データは見てみるとこんな感じです。種名はsetosaが続いていますが、下の方にversicolorとvirginicaもあって計三種類です。

がく長 がく幅 花弁長 花弁幅 種名
5.1 3.5 1.4 0.2 setosa
4.9 3.9 1.4 0.2 setosa
4.7 3.2 1.3 0.2 setosa

ではがく長とがく幅に相関があるのか散布図で見てみます。今回使っていくggplot2というパッケージはRの代表的な作画ツールで、簡単にきれいな図が描けます。

library(ggplot2)

##もしまだインストールしてなければ
install.packages("ggplot2")
library(ggplot2)

iris.sepal <- data.iris[,c(1,2,5)]
gg <- ggplot(iris.sepal,aes(x=Sepal.Length,y=Sepal.Width))+
  geom_point()

ggsave("fig/1201_1.jpeg",gg,width = 10,height = 7.5,units="cm")

普段はいちいちjepgに吐き出さないでplotのウィンドウ見ながら修正していくのがいいけど、保存はggsaveがおすすめです。できたプロットがこんな感じ。

無理やり回帰直線を引いてみる。geom_smooth()を上塗りするだけで簡単にできます。

gg <- ggplot(iris.sepal,aes(x=Sepal.Length,y=Sepal.Width))+
  geom_point()+
  geom_smooth(method = "lm")
ggsave("fig/1201_2.jpeg",gg,width = 10,height = 7.5,units="cm")

自明に相関なさそう。シェードの部分は標準誤差みたいです。

がく長とがく幅みたいなのってそれぞれに相関があるんじゃなくて種間で傾向が現れる気がするので、種で色付けしてみます。ついでにバックグラウンドのグレーのやつがダサくて気に食わないから消す

gg <- ggplot(iris.sepal,aes(x=Sepal.Length,y=Sepal.Width,col=Species))+
  theme_classic()+
  geom_point()
ggsave("fig/1201_3.jpeg",gg,width = 10,height = 7.5,units="cm")

まあなんとなく予想通り、setosaはがく片の縦横比だけで特徴づけられそうですね。論文のfigっぽくなった

もうちょい散布図やります、また明日

コメントする