PaulHurleyuk
PaulHurleyuk

Reputation: 8169

web based report generation that supports R (or just external programs)

I'm getting quite good at generating one off reports using R / Sweave / Knitr to process a template with R code that gets database data and produces a pdf / html / text / md or odf file, and I'm providing them more and more to users.

Ideally I'd love to provide an easy way for users to request a particular template with particular settings, then pick up the results of that report.

Can anyone suggest something like this, web based or whatever that will support an R / sweave workflow ??

Edit: Generating these reports (sweave'ing or knit'ting) can take a while, 3-5 mins, so support for requesting and later pickup is a must. In addtion multi user support would be good (i.e Bob can't see Jane's reports)

Upvotes: 3

Views: 348

Answers (1)

Jeff Allen
Jeff Allen

Reputation: 17527

If you want a true, interactive, web-based R framework, I'd strongly recommend taking a look at RStudio's new app: Shiny.

If you actually just want static reports of the PDF/HTML variety, I don't know that you need much to get that off the ground. You're basically just looking to take form-based input from a web page, pass that to R, run your reports, and offer the file as a download.

  • To build a simple HTML form, PHP would be dead-simple and supported by most hosting providers.
  • Then use something like PHP's system() function to call your RScript code passing the parameters in that call.
  • In R, use the commandArgs() function to extract the parameters specified to your script, generate the report.
  • Offer the generated report to the web user.

If you wanted something more comprehensive, you can look at setting up RApache or a similar technology, but I really think with the amount of effort you'd expend setting that up, you (and your users) would probably be better off using Shiny and getting the benefits of interactivity.

Upvotes: 1

Related Questions