web-dev-qa-db-fra.com

Centrer un tracé au milieu d'une page à l'aide de Knitr

Je voudrais aligner un tracé au centre d'une page d'un document pdf généré par knitr. Je peux aligner horizontalement l'intrigue au centre en utilisant fig.align='center' mais je ne sais pas comment aligner verticalement le tracé au centre.

J'utilise le code suivant:

---
header-includes: \usepackage{graphicx}
output: 
  pdf_document
geometry:
  left=1in,right=1in,top=1in,bottom=1in
---


```{r,fig.align='center',out.extra='angle=90', echo=FALSE}

library(ggplot2)
ggplot(diamonds, aes(y=carat, x=price, colour=clarity))+geom_point()+
facet_wrap(~cut)

```
12
Damian

Du côté de LaTeX, une figure centrée verticalement doit être un figure avec la position p . Comment cela peut être réalisé en utilisant knitr dépend:

  • Si la figure a une légende, elle est placée dans un environnement figure (voir fig.env ). Ensuite, seule l'option supplémentaire fig.pos = 'p' est nécessaire.
  • Si la figure n'a pas de légende (ce qui est généralement mauvais), vous pouvez ajouter manuellement l'environnement figure:

    \begin{figure}[p]
    
    ```{r,fig.align='center',out.extra='angle=90', echo=FALSE}
    
    library(ggplot2)
    ggplot(diamonds, aes(y=carat, x=price, colour=clarity))+geom_point()+
    facet_wrap(~cut)
    
    ```
    \end{figure}
    

Notez que cela fonctionne lors de la compilation en PDF mais vous limite à PDF comme format de sortie).

12
CL.