Ari Lamstein

Choroplethr, ggplot2 and R-Hub

Choroplethr v3.3.1 is now on CRAN. You can get it by typing the following from the R command line:

[code lang=”r”]
update.packages()
[/code]

Note that while the new version is now on CRAN, it sometimes takes a few days for all of the CRAN mirrors to update. If you are unable to get the latest version from CRAN, you can install it from github (instructions).

Compatibility with ggplot v2.0.0

The reason for this update is compatibility with the latest version of ggplot2 (link). Shortly after the latest version of ggplot2 was released, choroplethr users started reporting the following error to me:

[code lang=”r”]

Error: Don’t know how to add self$ggplot_polygon to a plot

[/code]

It took me a little while to realize that the problem was incompatibility with the new version of ggplot2. Once I realized the problem I was able to make the necessary changes and submit an updated version to CRAN.

Based on the number of packages which use ggplot2, I am guessing that R users might experience temporary problems with other packages as well. You can see the full list of packages which use ggplot2 here.

Enter the R Consortium and R-Hub

The update to ggplot2 was a major change. I mean “major change” in the sense of semantic versioning, not marketing. The changes were significant enough to potentially break code that depends on ggplot2.

Within the world of software engineering this is a fairly common occurence. What’s challenging about the R ecosystem is that there are so many packages, dependencies and authors that coordination about major changes can be difficult. Also, many authors only work part time on their R packages.

The good news is that the newly developed R Consortium has funded a project to help with this exact issue.The project is called R-Hub, and is led by Gábor Csárdi. You can read the press release about it here, and the full proposal here.

I am really looking forward to seeing what happens with R-Hub. It has the potential to reduce the risk that package authors face when making changes to their packages. Reducing this risk might result in even more innovation in the R ecosystem.

Ari Lamstein

Ari Lamstein

I currently work as a Staff Data Science Engineer at a marketing analytics consultancy. I have 20 years experience developing software in areas such as data science, web development and video games. I have also worked as a technical trainer and independent consultant.

Thanks for visiting!

Sign up to stay up to date with the latest blog posts: