ローカル画像があり、.Rmd
それをファイルに含めてknit
、HTMLスライドに変換したいと考えていますPandoc
。この郵便受けローカルイメージが挿入されます:
![Image Title](path/to/your/image)
このコードを変更して画像サイズも設定する方法はありますか?
ベストアンサー1
この質問は古いものですが、今でも多くの注目を集めています。既存の回答は古くなっているため、より最新の解決策を以下に示します。
ローカル画像のサイズ変更
現在knitr
1.12、関数 がありますinclude_graphics
。?include_graphics
(強調は筆者による) より:
この関数を使用する主な利点は、サポートされているすべてのドキュメント形式で機能するという点で移植性があるため
knitr
、外部画像を埋め込むために、たとえば LaTeX または Markdown 構文を使用する必要があるかどうかを考える必要がないことです。out.width
通常の R プロットに機能するグラフィック出力に関連するチャンク オプション (やなど) は、これらの画像にも機能しますout.height
。
例:
```{r, out.width = "400px"}
knitr::include_graphics("path/to/image.png")
```
利点:
- 以上agastudy の回答: 外部ライブラリや画像の再ラスタリングは必要ありません。
- 以上シュルティ・カプールの答え: HTML を手動で記述する必要はありません。また、画像はファイルの自己完結型バージョンに含まれています。
生成された画像を含む
プロットへの道を構成するにはチャンクで生成される(ただし、含まれていない) チャンク オプションopts_current$get("fig.path")
(図ディレクトリへのパス) とopts_current$get("label")
(現在のチャンクのラベル) が役に立つ場合があります。次の例では、fig.path
最初のチャンクで生成された (ただし、表示されていない) 2 つの画像のうち 2 番目を含めるために を使用しています。
```{r generate_figures, fig.show = "hide"}
library(knitr)
plot(1:10, col = "green")
plot(1:10, col = "red")
```
```{r}
include_graphics(sprintf("%sgenerate_figures-2.png", opts_current$get("fig.path")))
```
図のパスの一般的なパターンは で[fig.path]/[chunklabel]-[i].[ext]
、 はchunklabel
プロットが生成されたチャンクのラベル、i
はプロット インデックス (このチャンク内)、ext
はファイル拡張子 ( png
RMarkdown ドキュメントではデフォルト) です。