r markdown knitr pandoc pander

Reduzca el ancho de celda y el tamaño de fuente de la tabla usando pandoc.table()



markdown knitr (2)

Estoy usando knitr y pander para hacer una tabla en un archivo de rebajas. Estoy convirtiendo el archivo de rebajas a un PDF usando Pandoc desde dentro de R.

Este código:

library(knitr) ```{r myTable, echo=FALSE, message=FALSE, results=''asis'', comment=""} library(pander) pandoc.table(head(iris)) ```

entonces ejecutando esta función dentro de R:

knitsPDF <- function(name) { knit(paste0(name, ".Rmd"), encoding = "utf-8") callformat <-"pandoc -V geometry:margin=1in %s.md -o %s.pdf" system(sprintf(callformat, name, name)) } knitsPDF(name) # insert file name of .Rmd file

produce esta tabla en el archivo PDF:

¿Cómo puedo 1. Reducir el ancho de las columnas en la tabla? 2. ¿Reducir el tamaño de letra de la tabla?


Puede cambiar el tamaño de fuente para celdas específicas en pander y, por lo tanto, para toda la tabla, pero como solución alternativa utilizando el código de látex.

Donde está su celda, si los datos que llenan su celda son "770" al lado de otra celda poblada por "$ 731,258", si reemplaza la primera celda por paste0("//scriptsize", "770") , su salida se verá como algo como esto:

Como puede ver, el "770" está en una fuente más pequeña. Puedes hacer esto con cualquier etiqueta de fuente de látex.


Si no desea dividir la tabla en varias partes en función de su ancho, puede especificar eso directamente en el parámetro pandoc.table con pandoc.table o, más generalmente, en table.split.table en panderOptions . P.ej:

> pandoc.table(head(iris), split.table = Inf) ------------------------------------------------------------------- Sepal.Length Sepal.Width Petal.Length Petal.Width Species -------------- ------------- -------------- ------------- --------- 5.1 3.5 1.4 0.2 setosa 4.9 3 1.4 0.2 setosa 4.7 3.2 1.3 0.2 setosa 4.6 3.1 1.5 0.2 setosa 5 3.6 1.4 0.2 setosa 5.4 3.9 1.7 0.4 setosa ------------------------------------------------------------------- > panderOptions(''table.split.table'', 300) > pander(head(iris)) ------------------------------------------------------------------- Sepal.Length Sepal.Width Petal.Length Petal.Width Species -------------- ------------- -------------- ------------- --------- 5.1 3.5 1.4 0.2 setosa 4.9 3 1.4 0.2 setosa 4.7 3.2 1.3 0.2 setosa 4.6 3.1 1.5 0.2 setosa 5 3.6 1.4 0.2 setosa 5.4 3.9 1.7 0.4 setosa -------------------------------------------------------------------

Acerca del tamaño de fuente: el markdown de Pandoc no tiene una sintaxis especial para eso, por lo que puede usar el marcado LaTeX para su pdf. Por ejemplo, simplemente emita una directiva /footnotesize antes de su tabla. Consulte los posibles tamaños de fuente para obtener más detalles: http://en.wikibooks.org/wiki/LaTeX/Fonts#Sizing_text