[R] Problem with xtable- rescaling a table

Ista Zahn istazahn at gmail.com
Wed Feb 1 11:21:55 CET 2012


Hi,

It looks like you need scalebox inside the sidewaystable environment. If you 
must use scalebox, one solution is to use floating=FALSE when you call 
print.xtable, and insert the table environment directly in LaTeX, like this:

\begin{sidewaystable}[ht]
\scalebox{0.7}{
<<code1,results=tex,echo=false>>=
print(outfile, include.rownames=F, floating = FALSE)
@ 
}
\end{sidewaystable}

Alternatively, since the size of the table is determined by the size of the 
text in the table, you can just tell LaTeX to use a smaller font, e.g.

<<results=tex,echo=false>>=
print(outfile, include.rownames=F, floating.environment='sidewaystable', size 
= "scriptsize")
@ 

Best,
Ista

On Tuesday, January 31, 2012 11:41:27 PM Aurélien PHILIPPOT wrote:
> Dear R users,
> I am new to Latex and I am using the R package xtable to generate tables.
> I want to produce a table that is very long.  in the landscape format, but
> I would need to rescale the table so that it fits in the page. xtable
> enables me to have the landscape format, but I cannot rescale it, and there
> seems to be a problem, if I use scalebox in Latex on my output produced
> with stable and the option sidewaystable. Do you know any way to achieve
> this result with xtable or another R package?
> 
> Let's look at the following example:
> In R, I use the following code
> 
> ##############
> outfile<- matrix(nrow=3, ncol=3)
> outfile[2,1]<- 6.912
> outfile[3,1]<- 400
> outfile[2,2]<- 8.9722
> outfile[2,2]<- 500
> outfile[2,3]<- 4.00
> outfile[3,3]<- 400
> 
> 
> 
> library(xtable)
> outfile<- data.frame(outfile)
> colnames(outfile)<- c(" ","V1", "V2")
> 
> outfile<- xtable(outfile, caption= "Title", include.rownames=F,
> align=rep("c", 4), digit=2)
> print(outfile, include.rownames=F, floating.environment='sidewaystable')
> ################
> 
> I was wondering if it is possible to rescale in Latex when  the code was
> generated through xtable.  Indeed, when I run the latex table obtained from
> xtable, and use scale box, it does not work (and the problem comes from
> scalebox, which works otherwise).
> 
> \documentclass[11pt]{report}
> 
> \usepackage{rotating}
> 
>  %\usepackage[counterclockwise]{rotating}
> 
> \usepackage{graphics}
> 
> \usepackage{float}
> 
> 
> \pagestyle{empty}
> 
> 
> \begin{document}
> 
> \scalebox{0.70} { %resize
> 
> 
> % latex table generated in R 2.13.1 by xtable 1.6-0 package
> 
> % Tue Jan 31 23:26:10 2012
> 
> \begin{sidewaystable}[ht]
> 
> \begin{center}
> 
> \begin{tabular}{ccc}
> 
>   \hline
> 
>   & V1 & V2 \\
> 
>   \hline
> 
>  &  &  \\
> 
>   6.91 & 500.00 & 4.00 \\
> 
>   400.00 &  & 400.00 \\
> 
>    \hline
> 
> \end{tabular}
> 
> \caption{Title}
> 
> \end{center}
> 
> \end{sidewaystable}
> 
> 
> }
> 
> \end{document}
> 
> 
> 
> Thanks a lot for any advice.
> 
> 
> Best,
> 
> Aurelien
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list