Muchas gracias, José Antonio y Carlos.
Estaba por escribir sandeces varias. Comento, por si hay algún lector,
que como yo, se guarda los correos con respuestas a problemas posibles.
No estaba usando|header.tex|, que es necesario para una como para otra
solución.
El encabezado queda asÃ:
|---||
||title: "Tablas que no entran"||
||author: "Sandia Urlia"||
||date: ""||
||output: ||
|| pdf_document:||
|| includes:||
|| in_header: header.tex ||
||---
|
La solución que comentó Carlos (la de:
http://stackoverflow.com/questions/25849814/rstudio-
rmarkdown-both-portrait-and-landscape-layout-in-a-single-pdf)
tiene la ventaja de que permite girar tablas generadas con |kable()| sin
más que poner tres lineas de código tex. Importante dejar un espacio
después de terminar el chunk y antes de |\elandscape|.
|
||\newpage||
||\blandscape||
||```{r }||
||la.tabla.ancha <- cars[c(1:10),rep(1,14)]||
||knitr::kable(la.tabla.ancha, caption = "La tablaza")||
||```||
||
||\elandscape|
También sirve para girar código o lo que haga falta. En el caso de
arriba aparecen girados el código y la tabla.
En contra (o a favor) el entorno no es flotante, por lo que en el punto
en el que se coloque irá la página nueva
La solución que comentó josé Antonio requiere que en el documento
header.tex se incluya la linea:
|
||\usepackage{rotating}
|
Que, por otro lado, es lo que le faltaba al documento que habÃa
presentado antes para poder funcionar.
https://cran.r-project.org/web/packages/xtable/vignettes/xtableGallery.pdf
(pag. 25)
Asà quedó el chunk
|```{r results='asis'}||
library(xtable)
||x <- xtable(||
|| la.tabla.ancha, caption = "La tablota (2)"||
|| )||
||options(xtable.comment = FALSE)||
||print(x, floating = TRUE,||
|| floating.environment = "sidewaystable"||
|| )||
||```|
Pero atento! Que esta otra forma no funciona:
|
||```{r results='asis'}||
||options(xtable.comment = FALSE)||
||print(||
|| xtable::xtable(||
|| la.tabla.ancha, caption = "La tablota (1)",||
|| floating = TRUE,||
|| floating.environment = "sidewaystable"||
|| ))||
||```|
Para que funcione, tiene que estar generado el elemento |xtable| antes
de |print()| y luego asignarlo.
A favor (o en contra): el entorno que genera es flotante, por lo que se
insertará según las reglas de composición de LaTeX y no ahà mismo donde
uno está escribiendo.
Un posible header.tex para ver las dos soluciones:
| ||%para que rote con xtable
||\usepackage{rotating}||
%para girar a piacere
||\usepackage{lscape}||
||\newcommand{\blandscape}{\begin{landscape}}||
||\newcommand{\elandscape}{\end{landscape}}|
og., 2016.eko iraren 08a 18:36(e)an, Carlos Ortega igorleak idatzi zuen:
rmarkdown-both-portrait-and-landscape-layout-in-a-single-pdf
Saludos,
Carlos Ortega
www.qualityexcellence.es <http://www.qualityexcellence.es>
El 8 de septiembre de 2016, 17:28, Juan Abasolo <vcpabisj en gmail.com
<mailto:vcpabisj en gmail.com>> escribió:
Buenas a todos.
No me queda del todo claro si éste es el foro en el que preguntar
o deberÃa ser otro, ya que incluye cosas que van más allá de R.
Sepan disculpar si me estoy excediendo.
Estoy trabajando con RStudio y quiero generar un documento de
salida en PDF; en ese documento tengo bastantes tablas anchas que
no entran usando
knitr::kable(la.tabla.ancha)
SÃ salen perfectamente en HTML (no son tan anchas). Me resulta
evidente que si las pudiera poner a página entera en formato
apaisado, no tendrÃa problema y es lo que querrÃa hacer.
Intenté conseguirlo usando 'xtable' con un código que encontré por
ahÃ. Pongo seguido un ejemplo para poner en un documento Rmd
---
title: "Tablas que no entran"
author: "Sandia Urlia"
date: ""
output: pdf_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
```{r}
la.tabla.ancha <- cars[c(1:10),rep(1,14)]
knitr::kable(la.tabla.ancha, caption = "La tablaza")
```
```{r results='asis'}
options(xtable.comment = FALSE)
print(
xtable::xtable(
la.tabla.ancha, caption = "La-tablota",
floating = TRUE,
floating.environment = "sidewaystable",
type = "html"
))
```
Y asà se ve que las tablas no entran :__(
Muchas gracias