Alex Alex - 6 months ago 47
R Question

Plot a data frame as a table

I am moving away from Word/Excel tables and trying to generate a table in R. I have a data frame that I'd like to simply print as a plot, while being able to shade/colour cells and generally play with the aesthetics.

x <- data.frame(row.names=paste("Name",1:10))
x[,1] <- 1:10
x[,2] <- sample(1:100,10)
x[,3] <- sample(LETTERS[1:26],10)
colnames(x) <- c("Value 1", "Value 2", "Label")

provides the exact format I'd like my table, just as a save-able plot.

I tried


But received an error:

Error in plot.default(...) : formal argument "type" matched by
multiple actual arguments

I have seen how to output tables with two columns, but how can I plot the data frame as-is? Bonus points for showing how to stick that table below another scatter plot that I have created, so that the output ggsave has the scatter plot with the table under it.


Try this. Yes use pdf() to plot a PDF file (e.g. mydf.pdf) or png() to plot a png file:

pdf("mypdf.pdf", height=6, width=4)

enter image description here