Quartoで、コピペミスしない
プレゼンテーション資料作成

伊東宏樹

2026-05-30

本日の内容

  • Quartoとは

  • Quartoをつかったプレゼンテーション資料作成

役所とかの資料でありがちな例

生成AI (Gemini) で作成したイメージです。実在の組織・団体とは関係ありません。

問題点

  • 字が小さくて読みにくい

  • ゴチャゴチャしていて気が散る

  • コピー&ペーストで数値やグラフを貼り付けていると、データに修正があったとき

    • 手作業でやり直し

    • 直し忘れがち

      • ⇒ 再現可能性がない

望ましいのは

  • データから結果(グラフ含む)まで一貫処理

  • QuartoとRで できます

Quartoとは

Quarto

  • https://quarto.org/

  • オープンソースの科学技術出版システム

  • テキストファイルで文書の構造や内容を記述

    • R Markdown上位互換
    • Gitなどによるバージョン管理
  • Python, R, Julia, Observableに対応

  • HTML, PDF, MS Word, PowerPointなどの形式で、ドキュメント、プレゼンテーション、ウェブサイト等を作成

インストール

  • Quartoは独立したソフトウェア

  • 最近のRStudioにはQuartoが含まれているが、別にインストールすることも可能

  • 別にインストールする場合

    • Downloadページからインストーラーをダウンロードしてインストール
    • Homebrew (macOS) などのパッケージシステムからもインストール可能

Quartoをつかった
プレゼンテーション
資料作成

RStudioから

File > New File > Quarto Presentation

Reveal JSとKnitrを使用

Quarto文書

  • YAMLヘッダー

    • メタデータや設定を記述
  • 本文

    • Markdown記法(R Markdown上位互換)

    • コードや図表

YAMLヘッダー

プレゼンテーションなら

---
title: タイトル
author: 著者名
date: 2026-05-30
lang: ja
format: revealjs
---

format: revealjsで、Reveal JSをつかったHTMLのプレゼンテーションファイル作成

見出し

  • #または##でページ区切り

  • スライドの区切りでもある

    • Heading 1 (#)がセクション区切り

    • Heading 2 (##)が各スライドの見出し

本文

  • Markdown記法で記述(R Markdown上位互換)
    • RStudioでは、Visualモードでの編集もあり
  • RやPythonなどのコードを実行可能
  • 画像、計算結果、計算結果の図表を貼り込み可能

## 例

- リンク: [Quarto](https://quarto.org/)

- 画像ファイルの貼り込み:
  
![画像の貼り込み](images/Gemini_Generated_Image_jbi5dkjbi5dkjbi5-2.png){fig-align="left" width="440"}

例(レンダリング)

  • リンク: Quarto

  • 画像ファイルの貼り込み:

画像の貼り込み

コードセル(コードチャンク)

```{r}```で はさまれた行にRのコードを記述する。レンダリング時に実行されて、結果が表示される。

```{r}
#| label: calc-mean

mean(1:100)
```
[1] 50.5

```{r}の下の“#|”で始まる行はセルオプション

セルオプション

オプション 説明
#| label: ラベル ラベルsetupは初期設定セル)
#| echo: true/false コードを表示するか
#| output: true/false 結果を表示するか
#| eval: true/false コードを実行するか
#| include: true/false コード・結果を表示するか(実行はする)

ほか多数。詳細はQuartoのレファレンス Code Cells: Knitr を参照。

インラインコード

  • 本文中にRの計算結果を含めたいとき

  • `r 式`と書くと、レンダリング時にRの式が評価されて結果が埋め込まれる

    • 例: `r sd(1:100)` = 29.011492

グラフ

Rで作成したグラフがスライドに含まれる

library(ggplot2)
data(penguins)  # R 4.5.0からpenguinsデータが組み込まれました
ggplot(penguins, aes(x = bill_len, y = bill_dep,
                     colour = species, shape = species)) +
  geom_point(size = 3, alpha = 0.7) +
  labs(title = "ペンギンのデータ",
       x = "Bill length (mm)", y = "Bill Depth (mm)",
       colour = "Species", shape = "Species") +
  theme_classic(base_size = 18, base_family = "YuGothic")

グラフ

  • knitr::kable()gt::gt()DT::datatable()などの関数を利用可能

  • 下はgt()を使用した例

library(gt)
penguins |>
  dplyr::select(1:4) |>
  dplyr::slice(c(1:3, 201:203, 301:303)) |>
  gt(caption = "表: ペンギンのデータ") |>
  cols_label(species ~ "種", island ~ "島",
             bill_len ~ "嘴峰長", bill_dep ~ "嘴高") |>
  cols_units(starts_with("bill") ~ "mm",
             .units_pattern = "{1} ({2})") |>
  opt_stylize() |>
  opt_table_font(size = 32)

表: ペンギンのデータ
嘴峰長 (mm) 嘴高 (mm)
Adelie Torgersen 39.1 18.7
Adelie Torgersen 39.5 17.4
Adelie Torgersen 40.3 18.0
Gentoo Biscoe 44.9 13.3
Gentoo Biscoe 45.2 15.8
Gentoo Biscoe 46.6 14.2
Chinstrap Dream 46.7 17.9
Chinstrap Dream 52.0 19.0
Chinstrap Dream 50.5 18.4

数式(1)

  • LaTeX記法で数式を記述できる

  • 本文中に数式を含めるとき

    • $$の間に数式を記述: $\sqrt{x}$ = \(\sqrt{x}\)

数式(2)

  • 別行立てで数式を含めるとき

    • $$$$ に はさまれた行に数式を記述
$$
\Pr(X = x \mid x) = \frac{e^{-\lambda} \lambda^x}{x!}
$$

\[\Pr(X=x \mid \lambda) = \frac{e^{-\lambda}\lambda^x}{x!}\]

レンダリング

  • 結果の出力

  • RStudioの”⇒Render”ボタン

  • コマンドラインでも可能

quarto render file_name.qmd

PDF出力

  • Reveal JSのHTMLファイルとして出力したプレゼンテーション資料は、

    • 左下の「≡」からTools > PDF Export Modeにして、

    • ブラウザのプリントでPDF出力可能

  • ブラウザによっては ずれるかもしれません。

    • Chromeが推奨されていますが、Firefoxも大丈夫そう。

まとめ

  • Quartoをつかって

    • データから結果まで一貫処理

    • 再現可能な文書作成

🥳