9.3 Web ページの埋め込み

webshot パッケージ (Chang 2019) と PhantomJS をインストール (9.2説参照)していれば, knitr::include_url() でどんな web ページも出力文書に埋め込むことができます. コードチャンク内でこの関数に URL を与えれば, 出力フォーマットが HTML ならば <iframe> (インラインフレーム) が生成され, 他のパッケージならばスクリーンショットが埋め込まれます. 例えば図9.1は, 本書のオンライン版を読んでいるなら私の個人サイトが, それ以外なら代わりに静的なスクリーンショットが現れているはずです.

knitr::include_url("https://yihui.org")

図 9.1: iframe または screenshot による Yihui’s のホームページ

out.widthfig.cap といった図に関連するほとんどのチャンクオプションが knitr::include_url() でも機能します.

サーバ上で Shiny アプリを公開しているなら, knitr::include_app() を使えばこれを文書に含めることができます. これは include_url() と同じように動作します. bookdown(Xie 2016)Section 2.11 には include_app()include_url() に関する詳細な話が書かれています.

参考文献

Chang, Winston. 2019. Webshot: Take Screenshots of Web Pages. https://github.com/wch/webshot/.
———. 2016. Bookdown: Authoring Books and Technical Documents with R Markdown. Boca Raton, Florida: Chapman; Hall/CRC. https://bookdown.org/yihui/bookdown.