所以我想在R Markdown中插入一张桌子和一张图片。在常规word文档中,我可以轻松地插入一个表(5行乘2列),并且只需复制和粘贴图片。
如何插入5行2列表(并在其中键入内容)(并根据第2列宽度比第1列调整表格)?
如何插入图片?根据我的理解,我应该首先将图片保存为png,然后将其引用到我的文档中。此外,我想自动将图片调整到报告,比如不占用一页以上,或者不超过一页。(有没有办法让我根据自己的喜好调整图片的大小)?
如果有人知道关于R Markdown的任何酷/格式,你还可以让我知道吗?我知道#
为一个段落提供了一个大标题,而** **
则是大胆的事情。这就是我所知道的一切!
答案 0 :(得分:121)
有几个网站为表格和图片提供合理的备忘单或HOWTO。我的名单上的首位是:
RStudio的RMarkdown,basics中的更多详情(包括表格)和pandoc's markdown的重写。
图片使用起来非常简单,但不能调整图像以适应页面。要调整图像属性(大小,分辨率,颜色,边框等),您需要某种形式的图像编辑器。我发现我可以使用ImageMagick,GIMP或InkScape中的一个来完成我需要的一切,所有这些都是免费和开源的。
要添加图片,请使用:
![Caption for the picture.](/path/to/image.png)
我知道pandoc支持PNG和JPG,它可以满足您的大部分需求。
如果您在R中创建图像大小(例如,绘图),则可以控制图像大小。这可以直接在创建图像的命令中完成,或者更好地通过选项完成,如果您使用knitr(强烈推荐...签出chunk options,特别是在Plots下)。
我强烈建议您仔细阅读这些教程;降价是非常方便的,有许多功能,大多数人不会定期使用,但真的很喜欢他们学习它。 (在这些教程中,SO不一定是提出问题的最佳位置。)
答案 1 :(得分:44)
更新:自@ r2evans的答案以来,将图像插入R Markdown并控制图像大小要容易得多。
bookdown book很好地解释了使用include_graphics()
包含图片的最佳方式。例如,可以使用下面的标题打印全宽图像:
```{r pressure, echo=FALSE, fig.cap="A caption", out.width = '100%'}
knitr::include_graphics("temp.png")
```
此方法优于pandoc方法的原因![your image](path/to/image)
:
fig.width
),报告中的输出宽度(out.width
),添加标题(fig.cap
)等。 knitr::kable()
是在R Markdown报告中包含表格的最佳方式,如完全解释here。同样,此功能可以自动为所选输出选择正确的格式。
```{r table}
knitr::kable(mtcars[1:5,, 1:5], caption = "A table caption")
```
如果您想在R Markdown中创建自己的简单表并使用R Studio,则可以查看insert_table
package。它为制作表格提供了一个整洁的图形界面。
实现表格列宽的自定义样式超出了knitr
的范围,但编写了kableExtra
包以帮助实现此目的:https://cran.r-project.org/web/packages/kableExtra/index.html
R Markdown cheat sheet仍然是了解大多数可以使用的基本语法的最佳位置。
如果您正在寻找格式化的潜在扩展,bookdown
包也值得探索。它提供了交叉引用,创建特殊标题等功能:https://bookdown.org/yihui/bookdown/markdown-extensions-by-bookdown.html
答案 2 :(得分:4)
在插入图片时,如果需要PDF输出,r2evans对![Caption for the picture.](/path/to/image.png)
的建议可能会有问题。
knitr函数include_graphics
knitr::include_graphics('/path/to/image.png')
是一种更便携的选择
这将代表您生成最适合您正在生成的输出格式的降价。