Je veux faire une seule figure dans R avec deux parcelles dans un fichier démarqué avec knitr
. Normalement, cela est facile à faire avec layout(t(1:2))
ou par(mfrow=c(1,2))
. Est-ce que je peux faire ceci avec knitr
, ou fera-t-il toujours deux figures séparées?Utilisation de la mise en page avec knitr
Voici un exemple de travail minimum qui crée un fichier appelé ./junk.Rmd
et ./junk.md
dans votre répertoire de travail avec deux fichiers ./figure/junkislands1.png
(qui ne comprend que le premier tracé) et ./figure/junkislands2.png
(qui comprend les deux parcelles que je veux).
require(knitr)
temp <- "```{r junkislands, fig.width=8, fig.height=5}
layout(t(1:2))
pie(islands)
barplot(islands)
```"
cat(temp, file="junk.Rmd")
knit("junk.Rmd", "junk.md")
Le problème est pas tant que cela crée deux fichiers .png, mais plutôt que le fichier Markdown junk.md
comprend deux d'entre eux. Quand je fais cette démarque en HTML, il inclut les deux fichiers .png quand je veux seulement celui avec les deux figures tracées.
Voici le fichier junk.md
qui est généré à partir knitr:
```r
par(mfrow = c(1, 2))
pie(islands)
```
![plot of chunk junkislands](figure/junkislands1.png)
```r
barplot(islands)
```
![plot of chunk junkislands](figure/junkislands2.png)
à proprement parler, c'est un bug de 'knitr' (https://github.com/yihui/knitr/issues/292); Je vais essayer de le réparer plus tard; merci –
J'ai [fixe] (https://github.com/yihui/knitr/commit/3508ddb86f0068c17570b3c71dc1e79414041627) ce bug dans la version de développement: https://github.com/yihui/knitr#readme Vous pouvez certainement utiliser 'fig .keep = 'last'', mais cela ne sera plus nécessaire. –