rnotebookで折れ線グラフ

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

次のリビジョン
前のリビジョン
rnotebookで折れ線グラフ [2017/12/07]
adash333 作成
rnotebookで折れ線グラフ [2018/10/07] (現在)
ライン 2: ライン 2:
  
 基本的に、[[Excelで折れ線グラフと誤差]]に記載させていただいた方法でExcelを用いて描く法が圧倒的に早いです。しかし、見栄えを細かく設定したい場合は、Rを用いてグラフを描くとよいと思われます。かなり面倒ですが、慣れてくると、おそらく、楽しくなってくると思われます。 基本的に、[[Excelで折れ線グラフと誤差]]に記載させていただいた方法でExcelを用いて描く法が圧倒的に早いです。しかし、見栄えを細かく設定したい場合は、Rを用いてグラフを描くとよいと思われます。かなり面倒ですが、慣れてくると、おそらく、楽しくなってくると思われます。
 +===== 開発環境 =====
 +Windows 8.1 Pro (64-bit)\\
 +R Studio 1.1.383
 +
 +===== 1.データの準備 =====
 +エクセルに書き込んでいくのですが、1行目にIDや年齢、糖尿病DMの有無などの項目を並べていき、2行目からは各症例の生データを打ち込んでいきます。できれば、項目もデータも『半角英数字』が望ましいです。もし欠損データがある場合は、『NA』と入力します。
 +
 +今回は、以下のようなデータを用意します。糖尿病の7症例の3ヶ月間のHbA1c[%]の推移のデータだとします。
 +
 +^ ID     ^ age      ^ sex ^ DM     ^ HbA1c00M ^ HbA1c01M ^ HbA1c02M ^ HbA1c03M ^
 +| 00001    | 56 | M | 1 | 7.3  | 7.4 | 7.3  | 7.4 | 
 +| 00002    | 77    | F    | 1  | 8.3  | 8.4 | 8.3  | 8.2 | 
 +| 00003    | 68    | M    | 1  | 7.1  | 7.0 | 7.0  | 7.0 | 
 +| 00004    | 81    | F    | 1  | 7.6  | 7.4 | 7.3  | 7.4 | 
 +| 00005    | 42    | M    | 1  | 10.1 | 8.4 | 7.3  | 6.5 | 
 +| 00006    | 65    | M    | 1  | 6.1  | 6.2 | 6.2  | 6.3 | 
 +| 00007    | 68    | F    | 1  | 7.8  | 7.4 | 7.9  | 8.4 | 
 +
 +エクセルの画面では以下のようになります。
 +
 +{{:​pasted:​20171124-072636.png}}
 +
 +上記のエクセルファイルは、以下からダウンロードできます。
 +
 +{{book2.xlsx}}
 +
 +このHbA1cの平均の折れ線グラフと、各月における標準偏差をグラフに書き込みをしたいと思います。
 +
 +ファイル > 名前をつけて保存 >  「CSV(コンマ区切り)(*.csv)」を選択して、「保存」をクリック。
 +
 +{{:​pasted:​20171208-001246.png}}
 +
 +すると、book2.csv というファイルが保存される。
 +
 +{{:​pasted:​20171208-001414.png}}
 +
 +book2.csvは、以下をテキストファイルにコピーしてからbook2.csvという名前で保存していただけますと、利用できます。
 +
 +<​code>​
 +ID,​age,​sex,​DM,​HbA1c00M,​HbA1c01M,​HbA1c02M,​HbA1c03M
 +1,​56,​M,​1,​7.3,​7.4,​7.3,​7.4
 +2,​77,​F,​1,​8.3,​8.4,​8.3,​8.2
 +3,​68,​M,​1,​7.1,​7,​7,​7
 +4,​81,​F,​1,​7.6,​7.4,​7.3,​7.4
 +5,​42,​M,​1,​10.1,​8.4,​7.3,​6.5
 +6,​65,​M,​1,​6.1,​6.2,​6.2,​6.3
 +7,​68,​F,​1,​7.8,​7.4,​7.9,​8.4
 +</​code>​
 +
 +
 +
 +===== 2.折れ線グラフの作成 =====
 +R Studioで、File > New File > R Notebook をクリック
 +
 +{{:​pasted:​20171208-002037.png}}
 +
 +File > Save As で、今回は、171028_002 と入力して保存。
 +
 +{{:​pasted:​20171208-002213.png}}
 +
 +その後、下図のような位置にある、"​Insert"​>"​R"​ で、「チャンク」を挿入。
 +
 +{{:​pasted:​20171208-002300.png}}
 +
 +以下のようにグレーの部分が表示されるので、グレーの部分の中身に、Rのコードを記入。
 +
 +{{:​pasted:​20171208-002452.png}}
 +
 +Rのコード
 +
 +<​code>​
 +# データの読み込み
 +x <- read.csv("​book2.csv"​)
 +head(x)
 +</​code>​
 +
 +次に、そのコードを書いたチャンク(グレーの部分)の右上の、緑色の三角ボタンをクリック
 +
 +{{:​pasted:​20171208-002837.png}}
 +
 +すると、そのチャンク内のコードが実行される。
 +
 +{{:​pasted:​20171208-002927.png}}
 +
 +さらに、次の行に新しいチャンクを作成して、以下のコードを記載。
 +
 +<​code>​
 +# csvファイルの読み込み
 +x <- read.csv("​book2.csv"​)
 +
 +# (x,​y)の値の指定
 +x1 <- c(0, 1, 2, 3)
 +y1 <- c(mean(x$HbA1c00M),​ mean(x$HbA1c01M),​ mean(x$HbA1c02M),​ mean(x$HbA1c03M))
 +
 +# 高水準関数plotで、座標面を記載
 +plot(0, 0, type = "​n",​ xaxt="​n",​ xlim = range(x1), ylim = c(0, max(x[,​5:​8])),​
 +     xlab = "​Month",​ ylab = "​HbA1c"​)
 +
 +# 低水準関数pointsとlinesで、上で作った座標面に折れ線グラフを追加記載
 +m <- apply(x[,​5:​8],​ 2, mean)
 +s <- apply(x[,​5:​8],​ 2, sd)
 +points(x1, m, pch=16)
 +lines(x1, m)
 +
 +# 低水準関数arrowsで、標準偏差を追加記載
 +arrows(x1, m + s, x1, m - s, angle = 90, length = 0.1)
 +arrows(x1, m - s, x1, m + s, angle = 90, length = 0.1)  ​
 +
 +axis(1, at=0:3, labels=c("​0M",​ "​1M",​ "​2M",​ "​3M"​))
 +</​code>​
 +
 +{{:​pasted:​20171216-234338.png}}
 +
 +上の方の、Preview または、Knit To HTMLをクリック。
 +
 +{{:​pasted:​20171216-234550.png}}
 +
 +保存したいグラフを右クリックして、"​Copy Image"​をクリック。
 +
 +{{:​pasted:​20171216-234755.png}}
 +
 +Powerpointか何かを開いて、"​Ctrl+V"​でペースト。
 +
 +{{:​pasted:​20171216-235201.png}}
 +
 +なんだか<​wrap hi>​[[Excelで折れ線グラフと誤差]]</​wrap>​と比べて非常に面倒ですが、がんばって勉強すれば、エクセルよりも自由度が高そうです。
 +
 +
  
-===== 1.WindowsにRStudioをインストール ===== 
  
  
  
-作成中 
 ===== 参考文献 ===== ===== 参考文献 =====
 誤差範囲\\ 誤差範囲\\
 折れ線グラフにエラーバーをつける方法\\ 折れ線グラフにエラーバーをつける方法\\
 https://​stats.biopapyrus.jp/​r/​graph/​errorbar.html https://​stats.biopapyrus.jp/​r/​graph/​errorbar.html
 +
 +
 +
 +ggplot2用例集 入門編 - SlideShare\\
 +https://​www.slideshare.net/​mobile/​nocchi_airport/​ggplot2-62471507\\
 +論文の図の作成
 +
 +グラフ描画ggplot2の辞書的まとめ20のコード\\
 +https://​mrunadon.github.io/​ggplot2/​\\
 +→このサイトのコードをコピペするのが簡単か。
 +
 +
 +
 +ggplot2 まとめ: 初歩から程よいレベルまで - Mr.Unadon - \\
 +https://​mrunadon.github.io/​images/​geom_kazutanR.html
 +
 +論文用の棒グラフと折れ線グラフをggplot2で描く\\
 +https://​mrunadon.github.io/​ThesisPlot/​
 +
 +ggplotで論文用のthemeを作成する\\
 +http://​qh73xebitbucketorg.readthedocs.io/​ja/​latest/​1.Programmings/​r/​library/​ggplot/​tips/​reportTheme/​\\
 +スクリプト冒頭で “library(grid)” とすれば良い
 +
 +2012-12-18
 +『心理学研究』に準拠したggplot2のtheme\\
 +http://​m884.hateblo.jp/​entry/​2012/​12/​18/​152040
  
 連載\\ 連載\\
ライン 17: ライン 169:
 http://​gihyo.jp/​admin/​serial/​01/​r-markdown http://​gihyo.jp/​admin/​serial/​01/​r-markdown
  
 +2017-12-07\\
 +Rで横軸が時系列のグラフを書く\\
 +http://​touch-sp.hatenablog.com/​entry/​2017/​12/​07/​074914
  
 +R 使い方 軸・ラベルの調整(向き・サイズ・色など) グラフの描き方
 + ​2016年11月24日\\
 +http://​bioinfo-dojo.net/​2016/​11/​24/​various_axis_r/​
  
- +R でプログラミング:データの一括処理とグラフ描き\\ 
-作成中+6. グラフの重ね描き\\ 
 +http://​takenaka-akio.org/​doc/​r_auto/​chapter_06.html
  
 ===== リンク ===== ===== リンク =====
ライン 26: ライン 185:
 次: 次:
 <wrap hi> <wrap hi>
-[[RNotebookRインインコード]]+[[ggplot2折れ線グ]]
 </​wrap>​\\ </​wrap>​\\
  

rnotebookで折れ線グラフ.1512658830.txt.gz · 最終更新: 2018/10/07 (外部編集)