knitr를 사용하여 하나의 캡션과 함께 나란히 있는 이미지를 삽입하려고 합니다.
---
title: "XY"
author: "Doogan"
date: '`r format(Sys.Date(), "%B %d, %Y")`'
graphics: yes
output:
pdf_document:
toc: no
fig_caption: true
fontsize: 11pt
geometry: margin=1cm
---
```{r Directory, echo=F, message=F, warning=FALSE, paged.print=TRUE}
image.dir <- "your/directory/"
knitr::opts_chunk$set(echo = FALSE)
```
```{r 'xy_images'
,fig.show='hold',fig.pos='H',out.height='7.5cm',out.width='10cm',fig.cap="X
image (A) and Y image (B)"}
knitr::include_graphics(file.path(image.dir, 'X.png'))
knitr::include_graphics(file.path(image.dir, 'Y.png'))
```
위의 코드는 두 개의 별도(동일한) 캡션이 있는 두 개의 누적 이미지를 생성합니다.
fig.cap 호출이 제거되면 그림은 올바르게 정렬되지만 캡션은 없습니다.
단일 캡션만 표시되고 이미지가 나란히 정렬되도록 코드 청크를 변경하려면 어떻게 해야 합니까?
답변1
동일한 플롯 창에서 .png 이미지를 래스터로 플롯하여 이 문제에 대한 해결 방법을 찾았습니다.
```{r 'xy_images', fig.width = 8,fig.height = 4.5,
fig.show='hold',fig.pos='H'fig.cap="X image (A) and Y image (B)"}
library(png);library(raster)
X <-readPNG("X.png")
Y <-readPNG("Y.png")
#set up figure
par(mar=c(0,0,0,0), xpd=NA, mgp=c(0,0,0),
oma=c(0,0,0,0), ann=F, mfrow = c(1,2))
plot.new()
usr<-par("usr")
#fill plot with images
rasterImage(X, usr[1], usr[3], usr[2], usr[4])
rasterImage(Y, usr[1]+1.1, usr[3], usr[2]+1.1, usr[4])
```