Słaba rozdzielczość w knitrze za pomocą Rmd
Mam plik .Rmd i próbuję utworzyć plik .docx za pomocą funkcji pandoc.
Chcę mieć figurę o ostatecznej rozdzielczości 504 x 504 pikseli (tj. 7 x 7 cali z 72 dpi). Niestety domyślna rozdzielczość 72 dpi jest zbyt niska i chciałbym ją zwiększyć do, powiedzmy, 150 dpi bez zmiany ostatecznej rozdzielczości (tak, aby miała już prawidłowy rozmiar w pliku docx). Jeśli zachowam opcje fig.width i fig.height = 7 i ustawiona rozdzielczość = 150, otrzymam pożądaną jakość, ale ostateczna rozdzielczość wzrasta, a postać wieje poza marginesami. Próbowałem grać z argumentami out.width i out.height, ale kiedy dołączam te, po prostu nic nie kreślę w ostatecznym .docx.
Pomysły?
Przykład .Rmd:My title
-------------------------
*(this report was produced on: `r as.character(Sys.Date())`)*
That's my plot
```{r echo=FALSE}
plot(0,0,type="n",xlim=c(0,500), ylim=c(-12,0), las=1)
color <- rainbow(500)
text(380,-1,"Test",pos=4)
lseq <- seq(-6,-2,length.out=500)
for(j in seq_along(lseq)) {
lines(c(400,450), rep(lseq[j], 2), col=color[j])
}
polygon(c(400,450,450,400), c(-6,-6,-2,-2), lwd=1.2)
```
Przekształcanie w .docxlibrary(knitr)
library(markdown)
knit("example.Rmd") # produces the md file
pandoc("example.md", format = "docx") #prodces the .docx file
Jeśli spróbuję przeskalować figurę, to po prostu nie działa. Poniżej:
My title
-------------------------
*(this report was produced on: `r as.character(Sys.Date())`)*
That's my plot
```{r echo=FALSE, dpi=150, fig.width=7, fig.height=7, out.width=504, out.height=504}
plot(0,0,type="n",xlim=c(0,500), ylim=c(-12,0), las=1)
color <- rainbow(500)
text(380,-1,"Test",pos=4)
lseq <- seq(-6,-2,length.out=500)
for(j in seq_along(lseq)) {
lines(c(400,450), rep(lseq[j], 2), col=color[j])
}
polygon(c(400,450,450,400), c(-6,-6,-2,-2), lwd=1.2)
```