如何将图形导入为其原始高宽比?

Xia*_*chi 6 r r-markdown officedown

我正在使用该officedown包生成 Word 文档。请问,如果我想从磁盘导入一个设计好的图形,如何控制officedown不改变图形的高宽比?

比如我原来的图是这样的:

在此输入图像描述

然而,在生成的Word文档中officedown,它是这样的:

在此输入图像描述

请问,如何避免失真officedown?还有如何让图形的宽度占整条线呢?

我的问题可以通过以下代码重现:

---
output: officedown::rdocx_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(
    echo = FALSE,
    fig.cap = TRUE,
    message = FALSE,
    warning = FALSE
)
library(officedown)
library(officer)
```

```{r}
knitr::include_graphics("the file path to a figure")
```
Run Code Online (Sandbox Code Playgroud)

非常感谢您的指导!

man*_*nro 4

我做了一些实验。

对于输出:

bookdown::word_document2
Run Code Online (Sandbox Code Playgroud)

...我还没有找到任何解决方案。

但对于

officedown::rdocx_document
Run Code Online (Sandbox Code Playgroud)

... 建造

```{r fig.width=5, fig.height=5}
knitr::include_graphics("xxx.png") 
```
Run Code Online (Sandbox Code Playgroud)

...工作没有任何问题。


增加项:

它应该适合您的任务:

```{r}
library(imager)
my_pic <- load.image("xxx.png")
asp_rat <- dim(my_pic)[2]/dim(my_pic)[1] #find our aspect ratio

```

```{r fig.asp = asp_rat, fig.height = ??, fig.width = ??} #choose the best for your pic
knitr::include_graphics("xxx.png") 
```
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

看,宽高比已保存。您应该只确定每种情况的Fig.height/width。我还没有任何想法...