cfpb / design-manual

⚠️ THIS REPO IS DEPRECATED ⚠️ A set of design principles and standards for the Consumer Financial Protection Bureau.
https://cfpb.github.io/design-manual/
Creative Commons Zero v1.0 Universal
98 stars 71 forks source link

[DATA VIZ] Bar Chart Bonanza! #401

Closed amycesal closed 7 years ago

amycesal commented 8 years ago

@designlanguage and I are taking a set of data and pushing the boundaries of bar chats to see what we can do and where we want to go with style.

Raw data:

comparison of new york state and metro area complaints compared to the us
Product NY metro area NY state US
Mortgage 27% 25% 27%
Debt collection 20% 21% 26%
Credit reporting 17% 17% 16%
Credit card 14% 15% 11%
Bank acct/services 13% 13% 10%
Other 10% 10% 11%
breakdown of complaints in other financial services category
other financial service complaint sub Issue % Total
Fraud or Scam 46%
Customer service or customer relations 21%
Excessive Fees 7%
Unexpected or other Fees 7%
Advertising and marketing 6%
Other 5%
Disclosures 5%
Lost or stolen check 2%
Lost or stolen money order 1%
Incorrect exchange rate 1%
amycesal commented 8 years ago

Data set 1 in 7 different ways. Not all of them are good, or in a direction that we would want to go in, but this is a starting point for discussion.

bar-chart-bonanza_cesal_01-02 bar-chart-bonanza_cesal_01-03 bar-chart-bonanza_cesal_01-04 bar-chart-bonanza_cesal_01-05 bar-chart-bonanza_cesal_01-06 bar-chart-bonanza_cesal_01-07 bar-chart-bonanza_cesal_01-08

amycesal commented 8 years ago

the second data set.

bar-chart-bonanza_cesal_01-12

bar-chart-bonanza_cesal_01-11

bar-chart-bonanza_cesal_01-10

bar-chart-bonanza_cesal_01-09

piccocesar commented 8 years ago

Great examples Amy! All of the bars do a mostly great job telling the story. The one I keep coming back to is figure 2b. I cannot tell if I love or hate figure 2b and I think this confusion is a good thing. At first I was not crazy about the neural trick your mind plays where the bar gets lost behind the text on the shorter bars. It is as if you can only see either the text or the bar. At the same time I see it as amazingly efficient. Adding the value to the label is genius. I wonder if it would work best with an audience that is used to a more text based delivery of data. Where they can almost turn off the visual by just focusing on the label. I cannot wait to try this with some of my clients like those in the legal field.

I try to stay away from charts like 2d as much as possible if I cannot add labels to within each slice of the stacked bar. It always seems like too much work for the reader when a legend is involved.

JenniferHoran commented 8 years ago

I kind of love 2B, I've never seen that done before.

amycesal commented 8 years ago

@JenniferHoran is 2B going to be accessibility terrible though?

JenniferHoran commented 8 years ago

I think that actually if the contrast colours are chosen correctly, since the percentage is right there in text and the items are arranged in sequence, it would not be terrible for 508. You wouldn't even need alt text if done in HTML and not as an image.

amycesal commented 8 years ago

@piccocesar I agree about 2D. Do you have alternative chart types that you use that we're missing?

I also realized I'm missing any sort of axis labels and time period/date. I think date is an important point to advocate for since graphs often get re-used, and things live on the internet seemingly forever.

amycesal commented 8 years ago

Trying the other data set in the style-ish of 2B. And adding a date line at the bottom.

bar-chart-bonanza_cesal_01-14

JenniferHoran commented 8 years ago

I like it.

piccocesar commented 8 years ago

@amycesal I am a big fan of your updated chart (8A)!

You had asked about other charts that may not be listed. These are variants of the bar chart with some added complexity. I immediately thought of the bullet chart and the likert. These may need some work but as a quick sample: The bullet chart image

The likert chart (Google image search) likert

designlanguage commented 8 years ago

Here are some explorations of the first data set with a few other variables to discuss.

A1

This takes that same complaint data, but shows each as part of the whole (these percentages add up to 101%, but this is more about aesthetics, so we won't worry about numbers too much). Putting the amount inside the bar works here because there are no small percentages. Color options would be limited due to contrast requirements. screen shot 2016-03-10 at 11 35 18 am

A2

Here's the same chart without values for each complaint type, but adding axis labels. screen shot 2016-03-10 at 11 35 28 am

A3

Here's the data grouped by region rather than complaint type. The regions are listed above each grouping, which doesn't allow grid lines to pass through the bars. Instead, the exact amounts are listed to the right. screen shot 2016-03-10 at 11 35 43 am

A4

Grouping these by complaint category, as @amycesal did. Using color here for emphasis of difference. New York state and the Metro area have similar values and overlap to some extent, so picking similar colors for each reflects that. The US as a whole is further separated by color to highlight the difference. screen shot 2016-03-10 at 11 35 56 am

A5

These complaints are grouped by state, all labeled instead of using a key. There are no values listed, but white axis lines pass through the bars to help indicate their value. Because the lines are only visible on the bars, we can include region labels above each group of bars. screen shot 2016-03-10 at 11 36 06 am

A6

Vertical bars also work for this set. If the complaint type labels were more descriptive, it might preclude using an option like this. screen shot 2016-03-10 at 11 36 13 am

A7

Lastly, This shows each complaint percentage separately as part of 100% (the full width of the graphic). It takes up a lot of room. screen shot 2016-03-10 at 11 36 22 am

ekellett commented 8 years ago

bar chart 3 bar chart 2 bar chart 1

ekellett commented 8 years ago

These are three different bar chart options created quickly in Tableau with the data. Depends on what you are trying to compare/emphasize. Feedback is welcome. Looking forward to discussing this!

bfongdata commented 8 years ago

These are some Tableau bar graphs. They look nice but I want to emphasize that they take more time than Erin's quick examples. Some of the steps I had to take to create these are not widely known to users at the Bureau.

bf bar graphs

amycesal commented 8 years ago

After our discussion here's what we came up with as some overall conclusions. I tried to do some sorting to work them into categories.

emphasis

axis

labeling

JenniferHoran commented 8 years ago

Consistency is great for 508!

Avoid random sorting. Sort high to low unless there is a good reason for alphabetical or low to high. Grouping for emphasis - this is all great because we have to sort using some other indicator then colour. We can still use colour to group if we do these other things. Just watch for contrast :)

Directly labeled values should be inside or outside the bar. Don't mix. - also great for 508.

I really enjoyed watching this exercise unfold.

designlanguage commented 8 years ago

@amycesal - I think that unclear comment was related to the vertical stacked bar. We recommended a combination of color coding and direct labeling in that instance as opposed to just one or the other. It'll be interesting to test out some of these recommendations now.

amycesal commented 8 years ago

I'm thinking these were our top 5 recommendations/favorites. There are still things to work out with spacing, color, and type, but I think these are generally good, and I updated a few things from our conversation. Next up: talking about type and line charts. Sound like a plan?

bar-chart-bonanza_george_01-13

bar-chart-bonanza_george_01-12

bar-chart-bonanza_cesal_01-12

bar-chart-bonanza_cesal_02-16

bar-chart-bonanza_cesal_02-04

Scotchester commented 7 years ago

It seems like this issue has completed its intended purpose. Closing for now!

– The Eye 55 Grooming Crew