web-dev-qa-db-ja.com

Rマークダウンに写真や表を挿入する

それで、私はRマークダウンにテーブルと絵を挿入したいです。通常のWord文書では、私は簡単に表(5行×2列)を挿入することができます。そして画像の場合はコピーして貼り付けるだけです。

  1. どうやって5行2列のテーブルを挿入することができますか(また、2列目が最初の列よりも広くなるようにテーブルを調整します)。

  2. 画像を挿入する方法私の理解から、私は最初にpngとして写真を保存し、それから私の文書の中でそれを参照するべきです。また、1ページを超えたり、1ページ未満にしたりしないように、画像をレポートに合わせて自動的に調整します(画像のサイズを好みに合わせて調整する方法はありますか)。

  3. もし誰かがR Markdownについて何かクールな/フォーマットを知っているなら、あなたは私にも知らせてもらえますか?私は#が段落に大きな称号をつけること、そして** **が物事を大胆にすることを知っています。私が知っていることすべてについてだよ!

95
user3784616

いくつかのサイトでは、表や画像に関する妥当なチートシートまたはHOWTOを提供しています。私のリストの一番上にあります:

写真の使い方はとても簡単ですが、ページに合わせて画像を調整する機能はありません。画像のプロパティ(サイズ、解像度、色、ボーダーなど)を調整するには、何らかの形式の画像エディタが必要です。必要なことはすべて ImageMagickGIMP 、または InkScape のいずれかで、すべて無料でオープンソースにできます。

写真を追加するには、次のようにします。

![Caption for the picture.](/path/to/image.png)

PandocがPNGとJPGをサポートしていることを私は知っています。

あなたがRでそれを作成しているならば、あなたは画像サイズを制御することができます(例えば、プロット)。これは、イメージを作成するためのコマンドで直接実行することも、あるいは knitr (強くお勧めします...チェックアウトする チャンクオプション を使用している場合はオプションで実行することもできます)特にプロットの下)。

これらのチュートリアルを熟読することを強くお勧めします。マークダウンは非常に便利で、ほとんどの人が定期的に使用していない多くの機能を持っていますが、一度習得したようなものです。 (SOは、これらのチュートリアルで直接答えられる質問をするのに必ずしも最良の場所ではありません。)

121
r2evans

更新:@ r2evansからの回答なので、R Markdownに画像を挿入して画像のサイズを制御する方がはるかに簡単です。

画像

ブックダウンブックinclude_graphics()を使うことが画像を含めるための最良の方法であることを説明するのに素晴らしい仕事をします。たとえば、全幅の画像をキャプション付きで印刷することができます。

```{r pressure, echo=FALSE, fig.cap="A caption", out.width = '100%'}
knitr::include_graphics("temp.png")
```

この方法がpandocのアプローチ![your image](path/to/image)より優れている理由は次のとおりです。

  • 出力形式(HTML/PDF/Word)に基づいてコマンドを自動的に変更します。
  • プロットのサイズ(fig.width)、レポートの出力幅(out.width)、キャプションの追加(fig.cap)などに同じ構文を使用できます。
  • それは出力に最高のグラフィカルデバイスを使用します。これは、PDFイメージが高解像度のままであることを意味します。

テーブル

knitr::kable()はここで完全に説明されているように Rマークダウンレポートにテーブルを含めるための最良の方法です 。繰り返しになりますが、この機能は、選択された出力に対して正しいフォーマットを自動的に選択するのに役立ちます。

```{r table}
knitr::kable(mtcars[1:5,, 1:5], caption = "A table caption")
```

あなたがR Markdownであなた自身の簡単なテーブルを作りたい、そしてR Studioを使っているなら、あなたはinsert_tableパッケージ をチェックすることができます。それはテーブルを作るためのきちんとしたグラフィカルインターフェースを提供します。

テーブルの列幅のカスタムスタイルを実現することはknitrの範囲を超えていますが、これを実現するためにkableExtraパッケージが書かれています。 https://cran.r-project.org/web/packages/kableExtra/ index.html

スタイルのヒント

R Markdownのチートシート は、まだあなたが使うことができる最も基本的な構文について学ぶのに最適な場所です。

フォーマットの潜在的な拡張を探しているなら、bookdownパッケージも検討する価値があります。相互参照、特別なヘッダーなどの作成が可能です。 https://bookdown.org/yihui/bookdown/markdown-extensions-by-bookdown.html

50
Michael Harper

画像の挿入に関しては、PDF出力が必要な場合、r2evansによる![Caption for the picture.](/path/to/image.png)の提案は問題になる可能性があります。

Knitr関数 include_graphicsknitr::include_graphics('/path/to/image.png')は、あなたに代わって、あなたが生成している出力フォーマットに最も適したマークダウンを生成するより移植性の高い代替手段です。

4
ms609

3月にスライドショーで プレゼンテーション 、Rmarkdownで impress.js を作成しました。私のindex.Rmdheaderはこんな感じです

---
title       : French TER (regional train) monthly regularity
subtitle    : since January 2013
author      : brigasnuncamais
job         : Business Intelligence / Data Scientist consultant
framework   : impressjs     # {io2012, html5slides, shower, dzslides, ...}
highlighter : highlight.js  # {highlight.js, prettify, highlight}
hitheme     : tomorrow      # 
widgets     : []            # {mathjax, quiz, bootstrap}
mode        : selfcontained # {standalone, draft}
knit        : slidify::knit2slides

サブディレクトリは以下のとおりです。

/assets /css    /impress-demo.css
        /fig    /unnamed-chunk-1-1.png (generated by included R code)
        /img    /SS850452.png (my image used as background)
        /js     /impress.js
        /layouts/custbg.html # content:--- layout: slide --- {{{ slide.html }}}
        /libraries  /frameworks /impressjs
                                /io2012
                    /highlighters   /highlight.js
                                    /impress.js
index.Rmd

背景コードのスニペットの画像付きスライドは私の.Rmdになります。

<div id="bg">
  <img src="assets/img/SS850452.png" alt="">
</div>  

私が最後に作業してからいくつかの問題が現れました(写真はもう背景にはなく、テキストは私のRプロットには大きすぎます)。 RPubsで実行すると問題が発生します。

4
brigasnuncamais