使用knitr并排插入png图像

 天亮说晚安 发布于 2022-12-26 20:16

在创建html文档时,如何将计算机中的并排png文件插入rstudio?

以下效果很好(情节)

```{r, echo=FALSE,fig.hold'}
 plot(cars)
plot(rnorm(100))
```

但对于路径中的图像,仅显示最后一个图像

 ```{r fig.hold'}
   library(png)
  img <- readPNG("C:/path to my picture/picture.png")
  grid.raster(img)

  img2 <- readPNG("C:/path to my picture/picture2.png")
  grid.raster(img2)
  ```

Yihui Xie.. 19

你应该学习Markdown的语法(实际上,你需要大约五分钟).该解决方案甚至根本不涉及R:

![](path/to/picture.png) ![](path/to/picture2.png)

顺便说一下,你最好避免使用绝对路径.使用相对路径(相对于您的Rmd文件).

3 个回答
  • 你应该学习Markdown的语法(实际上,你需要大约五分钟).该解决方案甚至根本不涉及R:

    ![](path/to/picture.png) ![](path/to/picture2.png)
    

    顺便说一下,你最好避免使用绝对路径.使用相对路径(相对于您的Rmd文件).

    2022-12-26 20:19 回答
  • 您可以使用它knitr::include_graphics()作为接受路径矢量的参数。

    然后,您应该使用fig.show='hold',fig.align='center'以便将它们绘制在同一条线上并out., out.控制输出大小。

    ```{r, echo=FALSE,out., 
    out.,fig.cap="caption",fig.show='hold',fig.align='center'}
    knitr::include_graphics(c("path/to/img1","path/to/img1"))
    ``` 
    

    2022-12-26 20:21 回答
  • 如果所需的输出是MS Word文档,我们仍然缺乏对这个问题的良好答案(我看到OP专门要求HTML输出,但我猜我不是唯一一个来到这里寻找解决方案的人也适用于MS Word文档).

    这是一种基于此和此的方法,但结果并不十分令人满意:

    library(png)
    library(grid)
    library(gridExtra)
    img1 <-  rasterGrob(as.raster(readPNG("path/to/picture1.png")), interpolate = FALSE)
    img2 <-  rasterGrob(as.raster(readPNG("path/to/picture2.png")), interpolate = FALSE)
    grid.arrange(img1, img2, ncol = 2)
    

    2022-12-26 20:21 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有