IRkernel / repr

String and byte representations for all kinds of R objects
https://irkernel.github.io/docs/repr/
GNU General Public License v3.0
54 stars 33 forks source link

Use pander and xtable for matrix, data.frame and so on #35

Open jankatins opened 8 years ago

jankatins commented 8 years ago

@daroczig raised the very valid point in https://github.com/Rapporter/pander/pull/251, that we should not (re)implement how we do html and MD conversation of standard objects in repr:

Sorry for the silly question, but before figuring out the optimal next steps in short & long terms, why are you writing and maintaining the code for transforming R objects into HTML, tex or markdown? There's xtable and a bunch of other packages out there doing this and eg pander for markdown. So instead of having https://github.com/IRkernel/repr/blob/master/R/repr_matrix_df.r, you could simply call xtable for HTML or tex, and eg pander in a markdown notebook. Eg the pander way of writing reproducible reports is that you never call pander in your Rmd, as pander will be automatically applied on all the R objects.

flying-sheep commented 8 years ago

mainly because at the time, i just wrote a bunch of reprs for several kinds of objects and didn’t know that there were packages already doing that specifically for tabular data.

we could use them but then we’d have to use an option adapter (i.e. translate repr options to the specific packages’ equivalents)

jankatins commented 8 years ago

IMO we could either

repr_markdown.data.frame <- function(x)
   paste(capture_output(pander.data.frame(x)), collapse="\n")

or do a

repr_markdown.data.frame <- pander.data.frame

when/if pander supports a return mode...

Same for xtable...

jankatins commented 8 years ago

Re options: why not simple tell them the pander options? Would make things like https://github.com/IRkernel/repr/issues/14 much easier...