varias tabla studio lineas leyendas hacer graficos grafico graficas frecuencias como r

studio - tabla de frecuencias en r



Crear una tabla PDF (4)

Recientemente quise hacer esto pero no me gustó el formato de salida de grideExtra o textplot así que escribí esta función para hacerlo en latex. Es un poco un trabajo de hackeo y hay mejores maneras con sweave o knitr , pero puede que le resulte útil modificarlo para sus propósitos:

createPDF <- function(xx, name=deparse(substitute(xx))){ require(xtable) tt <- print(xtable(xx), type=''latex'') texfile <- paste0(''./reports/'', name, ''.tex'') cat( ''//documentclass[12pt]{report} //usepackage[landscape]{geometry} //date{} //begin{document}'', tt, ''//end{document}'', sep='''', file=texfile ) ## pdflatex from texlive package for linux converts .tex to .pdf system(paste0(''pdflatex '', ''-output-directory ./reports '', texfile)) }

¿Hay alguna manera de producir un PDF de una tabla desde R de la misma manera que se produce una gráfica (es decir, con pdf () o ggsave ())? Me doy cuenta de que hay maneras con otros programas (usando sweave, etc.), pero me gustaría producirlo solo desde R.


Sí, existe como puede colocar texto en gráficos y, por lo tanto, en dispositivos PDF.

La envoltura más bonita para esto puede ser la función textplot() en el paquete gplots confianza de Greg Warnes. A continuación se muestra el comienzo de la sección de ejemplos de su página de ayuda:

# show R version information textplot(version) # show the alphabet as a single string textplot( paste(letters[1:26], collapse=" ") ) # show the alphabet as a matrix textplot( matrix(letters[1:26], ncol=2)) ### Make a nice 4 way display with two plots and two text summaries data(iris) par(mfrow=c(2,2)) plot( Sepal.Length ~ Species, data=iris, border="blue", col="cyan", main="Boxplot of Sepal Length by Species" ) plotmeans(Sepal.Length ~ Species, data=iris, barwidth=2, connect=FALSE, main="Means and 95/% Confidence Intervals/nof Sepal Length by Species") info <- sapply(split(iris$Sepal.Length, iris$Species), function(x) round(c(Mean=mean(x), SD=sd(x), N=gdata::nobs(x)),2)) textplot( info, valign="top" ) title("Sepal Length by Species") reg <- lm( Sepal.Length ~ Species, data=iris ) textplot( capture.output(summary(reg)), valign="top") title("Regression of Sepal Length by Species") par(mfrow=c(1,1))


También está la función addtable2plot en el paquete plotrix.


ver también grid.table en gridExtra , usando gráficos de cuadrícula.