[This article was first published on Statistical Modeling, Causal Inference, and Social Science » R, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

I recently came across a data visualization that perfectly demonstrates the difference between the “infovis” and “statgraphics” perspectives.

Here’s the image (link from Tyler Cowen):

That’s the infovis. The statgraphic version would simply be a dotplot, something like this:

(I purposely used the default settings in R with only minor modifications here to demonstrate what happens if you just want to plot the data with minimal effort.)

Let’s compare the two graphs:

From a statistical graphics perspective, the second graph dominates. The countries are directly comparable and the numbers are indicated by positions rather than area. The first graph is full of distracting color and gives the misleading visual impression that the total GDP of countries 5-10 is about equal to that of countries 1-4.

If the goal is to get attention, though, it’s another story. There’s nothing special about the top graph above except how it looks. It represents neither a data-gathering effort, nor a statistical analysis, nor even a clever juxtaposition (as in the famous graph of health costs and life expectancies). If someone had posted the second graph above (the lineplot), I doubt it would’ve been sent around the web, and I doubt that Cowen would’ve noticed it in the first place.

Thus, in this modern world of multichannel communications, chartjunk does have a purpose: it gets you noticed.

P.S. Here’s my R code:

```png ("africagdp.png", height=350, width=400)
countries <- c ("South Africa", "Egypt", "Nigeria", "Algeria",
"Morocco", "Angola", "Libya", "Tunisia", "Kenya", "Ethiopia",
"Ghana", "Cameroon")
gdp <- c (285.4, 188.4, 173, 140.6, 91.4, 75.5, 62.3,
39.6, 29.4, 28.5, 26.2, 22.2)
dotchart (rev(gdp), rev(countries),
xlab="GDP in billions of US dollars",
main="African Countries by GDP",
xlim=max(gdp)*c(.038,1.02), pch=20)
dev.off ()```