LoginSignup
0
0

More than 5 years have passed since last update.

R で CSV のデータをグラフにするまで

Last updated at Posted at 2018-07-28

Julia で CSV のデータをグラフにするまで( https://qiita.com/Nabetani/items/ab8601f02176d63bc9e2 )の結果が芳しくなかったので、R でやることにした。

まずは R と R Studio をインストール。
R Studio は使わない感じだけど。

そして CSV を用意する。

こんな

foo,bar,baz
0.301159526431945,0.313898454910858,1.17473791223684
0.325130268171028,0.560497185694232,1.11750475177855
0.372315907398201,0.611611162175372,0.97738803760451
0.547662216748869,0.623214687217486,0.916423163300621
0.935238506542586,0.816615537373106,0.658791349303661
1.18550683453858,0.94334310373166,0.397721258358077
1.76558291386366,1.06395657347973,-0.122663466326476
1.98231779465134,0.91729852516118,-0.318439265035155
2.13064106463242,0.867904655344771,-0.525066684500675

感じ。
ちなみに上記データは味付けした乱数。

時刻 foo に bar と baz という値が計測されたと思うことにして、これを PDF 形式でグラフにする。

ソースコードはこんな

foobarbaz.r
pdf("foobarbaz.pdf", width=8, height=5) # 8×5 inch
dt<-read.csv("foobarbaz.csv")
plot(
  dt$foo,dt$bar,
  col="red",
  type="o",
  pch=20,
  xlab="foo",ylab="hoge",
  xlim=c(0.2,1.2), ylim=c(0,1))
lines(dt$foo,dt$baz,col="blue",type="o",pch=20,xlab="foo",ylab="hoge")
abline(h=(0:5)*0.2, v=(0:5)*0.2, lty=2, col="light gray") 
legend("bottomleft", legend=c("bar", "baz"),pch=20,col=c("red","blue"),lwd=1,lty=1)

dev.off()

感じ。

実行するためのコマンドは

Rscript hoge.r

というもの。r ではない。

出来上がるグラフはこんな
image.png

感じ。

実行時間は 0.3秒ぐらい。素晴らしい。

ところで。R言語のファイルの拡張子。".r" と ".R" 。どっちが主流なの?

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0