9 複数の出力フォーマット

R Markdown の主な利点は1つのソースから複数種類の出力フォーマットを作成できることです. これは1つ以上の Rmd ファイルでも可能です. 例えば本書は R Markdown で書かれ, 2種類のフォーマットでコンパイルされています. 印刷用の PDF と, オンライン版の HTML です.

コードチャンクの出力を全ての出力フォーマットに対応させるのは時には難題になることがあります. 例えばたった1つの CSS ルール (img { border-radius: 50%; }) で HTML 出力に対して円の画像を作成するのは非常に単純ですが, LaTeX 出力ではこれとそのまま同じようにはいきません. 典型的には Tikz グラフィックスに関係する問題になります.

ある出力要素がすべての出力フォーマットに対して動作するわけではありません. 例えば gifski パッケージ (Ooms 2021a) (4.14節参照) で GIF アニメを簡単に作ることができ, これは HTML 出力では完璧に動作しますが, LaTeX 出力に埋め込んだものは追加の GIF ファイルの処理と LaTeX パッケージなしでは不可能です.

この章では複数のフォーマットで動作する例を少しだけ提示します. ある機能が特定の出力フォーマットでのみ有効なら, その出力フォーマットに基づいて条件付きで有効・無効にする方法を提示します.

参考文献

Ooms, Jeroen. 2021a. Gifski: Highest Quality GIF Encoder. https://CRAN.R-project.org/package=gifski.