.Rmd
ファイルに含めたいローカル画像があり、それknit
をでHTMLスライドに変換しますPandoc
。この投稿によると、これはローカル画像を挿入します:

このコードを変更して画像サイズも設定する方法はありますか?
質問は古いですが、それでも多くの注目を集めています。既存の回答は古くなっているため、ここではより最新のソリューションを示します。
knitr
1.12の時点で、関数がありますinclude_graphics
。から?include_graphics
(強調鉱山):
この関数を使用する主な利点は、
knitr
サポートするすべてのドキュメント形式で機能するという意味で移植可能であるため、外部を埋め込むためにLaTeXやMarkdown構文などを使用する必要があるかどうかを考える必要がないことです。画像。通常のRプロットで機能するグラフィックス出力に関連するチャンクオプションは、やなどのこれらの画像でも機能しout.width
ますout.height
。
```{r, out.width = "400px"}
knitr::include_graphics("path/to/image.png")
```
利点:
チャンク(ただし含まれていない)で生成されるプロットへのパスを作成するには、チャンクオプションopts_current$get("fig.path")
(figureディレクトリへのパス)と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ドキュメント)です。
更新されていない答え:knitr 1.17
あなたは単に使用することができます
{width=250px}
@jsbからのコメントに従って編集
これはスペースなしでのみ機能することに注意してください。たとえば、{width=250px}ではなく{width=250px}です。
たとえば、パッケージを使用して画像を読み取り、パッケージからpng
使用して通常のプロットのようにプロットすることもできます。grid.raster
grid
```{r fig.width=1, fig.height=10,echo=FALSE}
library(png)
library(grid)
img <- readPNG("path/to/your/image")
grid.raster(img)
```
この方法を使用すると、画像のサイズを完全に制御できます。
画像を再保存せずにファイルを自己完結型に保ついくつかのオプションを次に示します。
div
画像をタグでラップします<div style="width:300px; height:200px">

</div>
---
title: test
output: html_document
css: test.css
---
## Page with an image {#myImagePage}

#myImagePage img {
width: 400px;
height: 200px;
}
複数の画像がある場合は、この2番目のオプションにn番目の子の疑似セレクターを使用する必要がある場合があります。
HTMLに変換する場合は、次のHTML構文を使用して画像のサイズを設定できます。
<img src="path/to/image" height="400px" width="300px" />
またはあなたが与えたいと思うどんな高さと幅でも。
今日同じ問題がありknitr 1.16
、PDFに編むときに別のオプションが見つかりました(これにはpandocがインストールされている必要があります):
{width=70%}
この方法では、自分に合ったサイズを見つけるために少し試行錯誤する必要があるかもしれません。2つの画像を並べて配置する方がきれいなため、特に便利です。例えば:
{width=70%}{width=30%}
クリエイティブになり、これらをいくつか並べて積み重ね、適切と思われるサイズにすることができます。その他のアイデアと例については、 https://rpubs.com/RatherBit/90926を参照してください。
私のために働いた別のオプションは、次のようなdpiオプションで遊んでいますknitr::include_graphics()
:
```{r}
knitr::include_graphics("path/to/image.png", dpi = 100)
```
...確かに(数学を行わない限り)、チャンクでディメンションを定義するのと比較して試行錯誤ですが、誰かを助けるかもしれません。
knitr :: include_graphicsソリューションは、図のサイズ変更にはうまく機能しましたが、それを使用してサイズ変更された図を並べて作成する方法を理解できませんでした。この投稿はそうするのに役立ちました。