Skip to content

Instantly share code, notes, and snippets.

@yihui
Created May 25, 2012 22:26
Show Gist options
  • Save yihui/2790922 to your computer and use it in GitHub Desktop.
Save yihui/2790922 to your computer and use it in GitHub Desktop.
draw a table by gridExtra in knitr
\documentclass{article}
\begin{document}
We can draw a table with the gridExtra package, and one problem is to
pre-determine the size of the table plot to remove the extra white
margin. Below is an example that shows you how to do it (courtesy of
baptiste auguie).
<<setup>>=
library(gridExtra)
g = tableGrob(head(iris, 4))
<<draw-table, dev='png', dpi=150, fig.width=convertWidth(grobWidth(g), "in", value=TRUE), fig.height=convertHeight(grobHeight(g), "in", value=TRUE)>>=
grid.draw(g)
@
\end{document}
@1beb
Copy link

1beb commented Sep 7, 2012

Was looking for exactly this! Is there any way to reduce the amount of typing involved? I'm using your code in a similar way with Rmd:

```{r} 
g = tableGrob(head(iris, 4))
```{r draw-table, dev='png', dpi=72, fig.width=convertWidth(grobWidth(g), "in", value=TRUE), fig.height=convertHeight(grobHeight(g), "in", value=TRUE)}
grid.draw(g)
```

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment