I saw this chart earlier this week in Chris Cillizza’s Washington Post article about changes in President Obama’s approval ratings. Here’s the figure and the accompanying text:

Image courtesy of Neil Newhouse

Image courtesy of Neil Newhouse

As the chart shows, four of the major pillars of President Obama’s electoral base — single women, African Americans, Hispanics and young (aged 18-29) voters — have all experienced a significant decrease in support for Obama over the past 18 months. Before we go further, it’s worth noting that the chart compares the percentage of the vote Obama received among these four groups in 2012 with percentages in each group who said they approved or disapproved of how he is handling his job in a March NBC-Wall Street Journal poll

The focus here is on the change in support for the President across these 4 groups, but I don’t feel the chart adequately visualizes that change. The only element that does so is the “Drop-off” text above each group.

I tried a variety of approaches to fix these shortcomings, but I’m not entirely satisfied with any of them. I’m therefore taking a two-pronged approach: First, this post lays out my thoughts about creating alternatives and some of the Excel techniques used in the process. Second, I’m cross-posting on HelpMeViz with my Excel file to see if others have better ideas.

My first thought was to create a fairly simple dot plot and connect the points with arrows instead of simple lines (you could call this an Arrow Chart, I guess, but later on I’ll make a true Arrow Chart, so let’s call this a dot plot for now). The first dot plot uses the same red-blue color scheme as the original, but to emphasize the two dates (2012 election results and 2014 NBC/WSJ poll), I used different shades of each. Unfortunately, I think this is cluttered with too many colors.

f1

As for actually building the graph, everything is encoded using data—the legend has four separate scatterplot series and two of them have data labels placed to the right. To label the change of each series, I added a separate set of data points at the middle of each arrow and right-aligned the data labels; Excel number formats are used to format the numbers. I got lazy with the “Approve” and “Disapprove” labels and just added them with two text boxes, but one could (and probably should) take a similar approach of encoding them with data and then formatting the labels. (Just to note: I try to use data to put everything on my Excel charts because it is then completely flexible if the data or scales change.)

The second dot plot simplifies the color scheme and uses shades of blue. Is this any better? I’m not sure—the reader still has to work to recognize that the right-hand plots of each group increased and the left-hand pairs decreased.

f2

The third dot plot tries to fix the shortcomings of the previous plot by adding shading for the “Approve” and “Disapprove” series. Mechanically, I added a column chart set to 100 for all series (except for the first two columns, which are set to 80 to leave some white space for the legend) and then formatted every-other column. Adding the column chart just required a little fiddling with the spacing; it could probably be improved a bit, but it’s fine for now. Conceptually, I think this is a better approach–the differences are clearer. However, the blue-red color palette might imply some kind of Democrat-Republican meaning instead of rising/declining. Red-green is out for the obvious reasons, so maybe a richer blue and a nice orange?

f3

For all of these, I wonder whether including the legend is the correct approach and, if so, whether it’s in the right position. In some of these dot plots, it feels really packed in. I usually argue to directly label the chart, but I worry that there will be too much going on around each dot with a date label, “Approve” and “Disapprove” labels, and the data labels.

Maybe the dot plots underemphasize direction? To improve on that aspect, I tried a traditional arrow chart. A major advantage of this approach is that I don’t think I need a separate legend for the 2012 and 2014 series and I can integrate it into the title. I don’t have the same feeling in the dot plots, maybe because the arrows are a single visual element here but join the pairs of points in the dot plot?

arrowchart

A couple of technical notes about building the arrow chart in Excel. First, I again used actual data to apply the data labels: five scatterplot series—one for the top of the blue arrows, one for the bottom of the blue arrows, one for the top of the red arrows, and one for the bottom of the red arrows, plus one final scatterplot series to label the change. Second, I simply created a stacked column chart (bottom series are set to an empty fill), drew a Block Arrow on the worksheet, and then pasted it onto the columns in the chart. Copying and pasting a simple arrow (from the Lines menu) did not work because the arrow head did not reach the data point and the lines were too thin. Fortunately, the Block Arrow does not short the data and fills the space better.

Finally, you may note that the original chart had the shares of each group (‘Single Women, 25%’, etc.). Perhaps that’s worth trying to visualize as well? So in the final chart, I created a column chart with varying widths scaled to each share. Because I have fairly simple shares here, I didn’t use Jon Peltier’s somewhat complicated method; I just repeated each series according to its share (I should have probably used an INDEX/MATCH formula to do this the right way, but I just copied and pasted). Alas, I really don’t like this graph—it looks too discontinuous. Perhaps combining it with the arrows or the shading from the third figure would work, but I’m sort of out of energy at this point.

variablewidthcolumns

I’ve got other ideas for this, but I’d rather let others take a shot, so I’m posting these images and my Excel file over at HelpMeViz, so take a look and help me out.

Thanks,
Jon