RStudioでスライド作成

前田和寛(@kazutan)
2015/2/14

HiRoshima.R #3

icon

自己紹介

所属

比治山大学短期大学部

Twitter

@kazutan

キーワード

#ビールうめぇ

kazutan

今日のお話

  • Rでスライド作成…?
  • R Markdownダイジェスト
  • Rpresの作り方
  • 出力・プレゼン
  • FAQ

免責事項

ペース速いです

  • 量が多く、時間の制約上
  • 細かい部分は参考サイトを紹介します

現時点での内容です

  • RStudioまわりの開発スピード速すぎ
  • 多分半年後にはまた機能が追加・変更されてますので
  • 動作確認状況
    • R-3.1.2
    • RStudio-0.98.1102
    • Ubuntu-14.04LTS

Rでスライド作成…?

なんでそんなことできるの…?

いいからデモだ!!

  • RStudioを起動
  • File → New file → R presentation
  • 適当な場所に適当な名前で作成
  • そのままPreview
  • Presentationウィンドウの右上のMore → View in Browser

…なにこれ?

どうやって操作すんの?

左右キーで送れます。あとEscキーで遠目ビューになります

これブラウザだよ?

htmlスライドといわれるものです

上のが邪魔

ブラウザの全画面モード、もしくはfキーで全画面モードになります

テキストデータからどうやってできるの?

Javascriptを利用して実現しています

R Presantation(Rpres)とは

R Markdown(Rmd)とよく似た記法で簡単にスライドを作成するためのもの

  • 基本はMarkdown(RMarkdown)と一緒
  • 覚えることが少なくてすぐに使える!便利!

まずはRmdを理解→Rpresへ

R Markdownダイジェスト

ダイジェストなので一気に駆け抜けます

まーくだうん…?

マークアップ言語の一つ

  • 主にHTMLに変換するために使われる
  • 文書構造を意識してればさくっと作れる
  • アウトラインを意識して作る人には作りやすい
  • htmlタグをそのまま受け付ける

気をつけるポイント

  • 色々なところで拡張されてて"方言"みたいなのがたくさんある
  • 細かいところの設定は難しい
  • CSS(スタイルシート)を扱うには厳しい(面倒)

見出し要素(h1 - h6)

# タイトル扱い(h1)
## 大見出し扱い(h2)
### 中見出し扱い(h3)

タイトル扱い(h1)

大見出し扱い(h2)

中見出し扱い(h3)

※Rpresでは###以下を推奨します。

箇条書きについて

箇条書きは-などを使います。

- 箇条書きa1
- 箇条書きa2
  - 箇条書きb1
  - 箇条書きb2
- 箇条書きa3
  • 箇条書きa1
  • 箇条書きa2
    • 箇条書きb1
    • 箇条書きb2
  • 箇条書きa3

その他の要素について

実は、RStudioにはMarkdown Quick Referenceがついてます!(デモ)

Rのコード埋め込み(Chunk)

# ```{r}
# (ここにRのコード記述)
# ```

例えば…

# ```{r}
# mean(1:10)
# ```

実行すると…

mean(1:10)
[1] 5.5

※ このコード内の#は以降無視してください

チャンク名とチャンクオプション

チャンクオプションで色々設定できます。

# ```{r チャンク名, オプション名=値, ...}

チャンク名は、わかりやすいのをつけとくと後々便利です。
オプションは色々ありますが、主なものを紹介します

echoオプション

コードを表示するかどうかを指定できます(コードは評価します)

# ```{r エコーなし, echo=FALSE}
# mean(1:10)
# ```
[1] 5.5
# ```{r エコーあり, echo=TRUE}
# mean(1:10)
# ```
mean(1:10)
[1] 5.5

evalオプション

コードを評価するかどうかを指定(コードは表示します)

# ```{r 評価なし, eval=FALSE}
# mean(1:10)
# ```
mean(1:10)
# ```{r 評価あり, eval=TRUE}
# mean(1:10)
# ```
mean(1:10)
[1] 5.5

includeオプション

チャンクの出力をするかどうかを指定(コードは評価、前処理向け)

# ```{r 出力一切なし, include=FALSE}
# mean(1:10)
# ```
# ```{r 出力あり, include=TRUE}
# mean(1:10)
# ```
mean(1:10)
[1] 5.5

resultオプション

コードの評価結果の出力方法を指定 細かいところは省略しますが、表出力でうまく出てこない時などは以下のようにasisを指定してください。

# ```{r result='asis'}

その他のオプション

  • エラーや警告の処理
    • warningオプションやerrorオプションをFalseにすると非表示に。
  • プロットなどのサイズ
    • fig.widthやfig.heightオプションで画像ファイルのサイズ指定可能(インチ)
    • out.widthやout.heightオプションでレポート内でのサイズ指定可能(htmlならpx単位)

Tips

プロジェクトを毎回使おう

RStudoを使うなら、毎回ちゃんとプロジェクトを作って作業しましょう
特に窓機は文字コードの問題があるので、プロジェクトの設定でUTF-8にしてください

チャンク名はなるべくつけよう

RStudioでは、スクリプトウィンドウの左下に各チャンクに飛べるショートカットがついてます
ちゃんと名前をつけてるとこれで一発です

Markdownのエディタとして使いこなそう

RStudioはMarkdownエディタとしてもなかなか使い勝手がいいです
折りたたみ機能もあるのでアウトラインエディタとしても使えます(デモ)

Rpresの作り方

やっと本題です。

スライド1枚分の書式

#
# (スライドタイトル)
# ====================
# スライドの内容
# スライドの内容
# スライドの内容
#

ポイント

  • =がスライド区切りの意味
    • 上にある行をタイトルとして読込
    • 下にある行をコンテンツとして読込
    • =は3つ以上ならいくつでもOK
  • スライドタイトルの上には1行あけてください

1枚目スライドについて

# (プレゼンタイトル)
# =====================
# author: (名前を入力)
# date: (日付を入力)
#

他のスライドとの違い

  • 1枚目は自動的にタイトルスライドとなります
    • =行以下にあるのはスライド全体に関する設定
    • デフォルトでautherとdateが入ります
    • この2つはそのままスライド表示

スライドのレイアウト(type)について

#
# (スライドタイトル)
# ====================
# type: (ほげほげ)
#

(ほげほげ)のところでレイアウトを指定

type: section

タイトルスライド。明示的に使うことはほぼなし。

type: sub-section

セクションタイトルスライド。意識して使いましょう。

type: prompt, type:alert

背景色が標準とは変わるスライド。

  • prompt: 問いかけなどで出すと有効?
  • alert: 警告などで有効

"type: prompt"のサンプル