RStudio – new cross-platform IDE for R

The new R environment RStudio looks really great, especially for users new to R. In teaching, these are often people new to programming anything, much less statistical models. The R GUIs were different on each platform, with (sometimes modal) windows appearing and disappearing and no unified design. RStudio fixes that and has already found a happy home on my desktop.

Initial impressions

I’ve been using it for the past couple of days. For me, it replaces the niche that R.app held: looking at help, quickly doing something I don’t want to pollute a project workspace with; sometimes data munging, merging, and transforming; and prototyping plots. RStudio is better than R.app at all of these things. For actual development and papers, though, I remain wedded to emacs+ess (good old C-x M-c M-Butterfly).

Favorite features in no particular order

  • plots seamlessly made in new graphics devices. This is huge— instead of one active plot window named something like quartz(1) the RStudio plot window holds a whole stack of them, and you can click through to previous ones that would be overwritten and ‘lost’ in R.app.
  • help viewer. Honestly I use this more than anything else in R.app and the RStudio one is prettier (mostly by being not set in Times), and you can easily get contextual help from the source doc or console pane (hit tab for completions, then F1 on what you want).
  • workspace viewer with types and dimensions of objects. Another reason I sometimes used R.app instead of emacs. This one doesn’t seem much different from the R.app one, but its integration into the environment is better than floaty thing that R.app does.
  • ‘Import Dataset’ menu item and button in the workspace pane. For new R users, the answer to “How do I get data into this thing?” has always been “Use one of the textbook package’s included datasets until you learn to read.csv()”. This is a much better answer.
  • obviously, the cross-platform nature of RStudio took the greatest engineering effort. The coolest platform is actually that it will run on a server and you access it using a modern browser (i.e., no IE). (“While RStudio is compatible with Internet Explorer, other browsers provide an improved user experience through faster JavaScript performance and more consistent handling of browser events.” more).

It would be nice if…

  • indents worked like emacs. I think my code looks nice largely because of emacs+ess. The default indent of two spaces is nice (see the Google style guide) but where newlines line up by default is pretty helpful in avoiding silly typing errors (omitted commas, unclosed parentheses
  • you could edit data.frames, which I’ll guess they are working on. It must be hard, since the R.app one and the X one that comes up in emacs are so abysmal (the R.app one is the least bad). RStudio currently says “ Editing of matrix and data.frame objects is not currently supported in RStudio.” :-(

Overall, really great stuff!

11 thoughts on “RStudio – new cross-platform IDE for R

  1. That quartz window in R.app doesn't overwrite new graphics. They're all there. If you want to see the previous plot then hit command left arrow. I'll leave it to the reader to figure out going back.

  2. I learned about RStudio this winter and have recently started using it with the students in one of my classes (the only class in which I teach with R). I am already loving the fact that I can work on something on my office computer and pick up the project on my home computer, then go back to it the next day at my office — or in the classroom. I suppose that those of you who carry around the same laptop all day don't see this as a big deal, but for me it is major plus. I've only been using RStudio for a couple of weeks, and with my students for one week, but count me as a fan.

  3. Did anyone get "savePlot" function to work? there may be an issue with this, as I get the following error…

    Error in savePlot(filename = "test", type = "emf", device = dev.cur()) : can only copy from 'windows' devices

  4. JJ and the RStudio team have done a great job. It's really a testament to their skill that they can make an app written in javascript a killer desktop application.

    I would just point out (in a rather self-promoting note) that JGR ( http://www.rforge.net/JGR ) has a lot of the features you point out. It is cross-platform with a consistant LAF, workspace viewer, data import dialog (supporting many data formats). You can also edit workspace objects (e.g. data.frames) and there is a preference item to set your tab width. Combined with Deducer ( http://www.deducer.org ), JGR becomes not just an IDE, but a powerful data analysis GUI.

  5. I like RStudio's promise, but haven't found it superior to the Mac's default R GUI. Those nifty tabbed graphics windows don't have the same defaults as the R GUI's Quartz windows and simply don't look as good for the (lattice) graphs I tried.

    A lot of promise, to be sure, but not quite ready. Give it some time to add more preferences (only one available right now) and it'll be a contender.

  6. The most important thing to develop is a menu with statistical analyses you can click on. This will help newbies to R like me associate the commands with the analyses, which is often what we're there for.

    STATA has such a thing. Looks like deducer.org is trying to do that for R.

  7. It is true, JRG has many great features…which are not yet menu-based on RStudio…it's matter of time, I think…
    Deducer is a great package for "building" plots using the "grammar of graphics" paradigm…will RStudio be able to do? not anytime soon…

  8. Rstudio looks like it will make Revolution Analytics irrelevant. Good work. I hope they dont focus on menu driven GUI – a prospective data analyst should learn basic R programming or they have no business doing data analysis.

  9. Menu driven GUI is useless for real life work. If they wanna the IDE be more user friendly, they could probably add some direct editing features for plots.Oh, and EPS format too.

Comments are closed.