Nathan Yau has just published at FlowingData a step-by-step guide on making bubble charts in R. It's actually pretty simple: read in data, sqrt-transform the "bubble" variable (to scale the bubbles by area, not radius), and use the symbols function to plot. It's the last step, though, that really ups the presentation quality: read R's PDF file into Illustrator and clean up for publication:
You can mess around with this in R, if you like, but I've found it's way easier to save my file as a PDF and do what I want with Illustrator. I uncluttered the state labels to make them more readable, rotated the y-axis labels, so that they're horizontal, added a legend for population, and removed the outside border. I also brought Georgia to the front, because most of it was hidden by Texas.
The final chart is, indeed, beautiful:
FlowingData: How to Make Bubble Charts
And if you want to do that with Open Source tools, use R's svg graphics device and edit in Inkscape!
Posted by: Barry Rowlingson | November 23, 2010 at 09:15
Great suggestion, thanks Barry!
Posted by: David Smith | November 23, 2010 at 09:19
FWIW, there's a JSS paper on the subject (I can't remember the title right now, something about Perceptual Scaling) that suggests that ^0.57 is a better transform for the radius than ^0.5. That's what I use for my own bubble charts for the most part (though at most resolutions it's hard to tell the difference between two by eye).
Posted by: Byron | November 23, 2010 at 11:51
how is it possible to create a pie chart in a bubble plot?
Posted by: linda | June 18, 2013 at 01:50