Peltier Tech Blog

Excel Chart Add-Ins | Training | Charts and Tutorials | Peltier Tech Blog

 

Main menu:

Peltier Tech Chart Utilities for Excel Peltier Tech Panel Chart Utility Peltier Tech Waterfall Chart Utility Peltier Tech Cluster-Stack Chart Utility Peltier Tech Box and Whisker Chart Utility Peltier Tech Marimekko Chart Utility Peltier Tech Dot Plot Utility Peltier Tech Cascade Chart Utility

 
Excel Dashboards
 

 
Amazon Books
 

Subscribe

Site search

Subscribe

Site search


Recent Posts

Popular Posts

Privacy and License

Privacy Policy

Creative Commons License
Licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

Broken Y Axis in an Excel Chart

 
by Jon Peltier
Friday, November 18th, 2011
Peltier Technical Services, Inc., Copyright © 2012.
Licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

If you’re looking for a tutorial on breaking an axis scale, you won’t find it here. Instead you’ll read why breaking an axis is a bad idea, and you’ll get a tutorial in Panel Charts, which are a more effective (and easier) means to show your data.

Chart with Broken Y Axis

The Problem

People frequently ask how to show vastly different values in a single chart. Usually they ask because a few very large values (for instance, Paris in June or Madrid in May in the chart below) overwhelm the other, relatively much smaller, values.

Chart with Unbroken Y Axis

Logarithmic Scale

One suggestion is to use a logarithmic scale. For scientific data presented to scientific audiences, this is often an excellent suggestion. For the general public, and for general data, this may not be so useful. Especially in a bar chart, where the length of bars is important to comprehension, not some mathematical abstraction of length.

Chart with Logarithmic Y Axis

Broken Axis

Another suggestion is to “break” the axis, so that part of the axis shows the small values, then another part of the axis shows the large values, with a section of the axis scale removed. Sounds good, but you’ve lost any correlation between the large and small values. Also our eyes are likely to see the two broken bars in the chart below as only about twice the value of the tallest of the unbroken values (despite our conscious brains “knowing” that the axis has been cut).

Chart with Broken Y Axis

Another problem with this approach is that it’s cumbersome to create and nearly impossible to maintain charts like this.

Panel Chart

A better suggestion than either a log scale or a broken axis is to plot the data in a panel chart. This chart has two panels, one with an axis that shows all the data, the other with an axis that focuses on the small values. I generally advise strongly against using any kind of gradient in a chart, because the gradients are pretty much meaningless. In this chart, the gradient at the tops of the (truncated) large values are not meaningless, but are intended to show the large values extending high up into the clouds.

Chart with Panels Having Distinct Y Axis Scales

Making the Panel Chart (It’s Easy!)

If you want to play along at home, the data is located in BrokenYData.csv.

The panel chart is really not too complicated. It consists of one set of data plotted on the primary axis and another set on the secondary axis. The primary axis data shows all the data using the full Y axis scale.

Primary Axis Data

The secondary axis is scaled to show the smaller values. Note that the two very large values (>30M) have been truncated at a suitably small value (7.5M).

Secondary Axis Data

When seen as part of a panel chart, the primary axis (left of chart) has been scaled so that its data occupies the top half of the chart.

Upper (Primary Axis) Panel

The secondary axis (right) has been scaled to keep its data within the bottom half of the chart.

Lower (Secondary Axis) Panel

It only takes a little experience, imagination, and knowledge of algebra to choose suitable scales. Fortunately readers of my blog are gifted in these characteristics.

The first step in creating this panel chart is to plot all six series (primary and secondary versions of the original three series).

All Data Plotted on Primary Axis

One by one, format the last three series to move them to the secondary axis. Then rescale the two axes as shown above, to allocate the primary and secondary to separate panels.

Data Allocated to Primary and Secondary Axes, Axes Rescaled

Format the secondary series so they have the same fill colors as the corresponding primary series.

Matching Bars Formatted the Same

Clean up the axis labels using custom number formats: [>=0]0,,"M";;; for the primary axis and [<8000000]0,,"M";;; for the secondary axis. Remove the redundant legend entries: click once on the legend, then again on the duplicate label, and press Delete.

Axis Labels Cleaned Up

As I mentioned, use of gradient fills is usually useless or even harmful formatting. However, I’ve formatted the truncated bars in the bottom panel of this chart to (try to) indicate that they extend higher than their neighbors, into the clouds. Here are the settings I used. First I selected just the one data point (bar) by single clicking on it twice. The first click selects the whole series, the second selects just the one point. I chose a gradient direction that puts the light end of the bar at the top. I moved the middle gradient stop to 80%, so the gradient is confined to the very top of the bar. I set the bottom and middle gradient colors to the fill color of the series, and I set the top gradient color to white.

An Effective Gradient Format

Here is the finished panel chart, repeated here for your viewing pleasure.

The Finished Panel Chart

Related Posts:

Learn how to create Excel dashboards.

Comments


Comment from Naomi B. Robbins
Time: Friday, November 18, 2011, 11:46 am

I read the title, saw the top figure and thought to myself, “Finally I’ve found an area where I disagree with Jon.” Then I read, “You won’t find it here.” Another great post!


Comment from Patrick M
Time: Friday, November 18, 2011, 12:11 pm

Jon,

Brilliant, as usual. I have fended off requests before for a broken y axis, but I never thought about panel charts as an alternative. (As for logarithmic scales for most audiences: don’t even go there!)

Patrick


Comment from Jon Peltier
Time: Friday, November 18, 2011, 3:02 pm

Naomi -

I once had a tutorial that showed how to break an axis, but it was problematic. Not only was it a source of data distortion, it was also a technique that people had an inordinate amount of trouble with. Finally I decided it was time to officially retire that page.


Comment from Bob
Time: Friday, November 18, 2011, 6:33 pm

Hi Jon,

I recently tried using your older “broken axis” method for a report. It was complicated and the results were not satisfactory.

My only observation with this method is the tick marks. I would want to make sure the steps on the right and left axis line up properly.

Cheers,

Bob


Comment from Rob
Time: Saturday, November 19, 2011, 7:20 am

Excellent stuff. Really useful. Thanks!


Comment from Wal
Time: Sunday, November 20, 2011, 2:02 am

It would be nice and help to include the data setup for plotting this as ell. Tricky to work out without some clues. Is it possible to send this?? Otherwise very helpful.


Comment from Jon Peltier
Time: Sunday, November 20, 2011, 9:12 am

Hi Wal -

The data is located in BrokenYData.csv.


Comment from Stefan
Time: Tuesday, November 22, 2011, 4:13 am

Hi Jon,

maybe we can use Andy Pope´s solution as an add?

Stefan


Comment from Jon Peltier
Time: Tuesday, November 22, 2011, 7:20 am

Stefan -

It is possible to create the broken axis effect in a chart, that’s not the point. Many of these effects seem like a great shortcut, a clever way to squeeze diverse data into a smaller space. The problem is that it is vary hard to overcome the erroneous judgement of values presented in cognitively unintuitive ways.

Broken axes, tertiary (and secondary) axes, dial gauges, faux 3D charts, and all manner of gratuitous graphical effects are all things that are possible, “even” in Excel charts. But just because something is possible does not mean it should be done.


Comment from Bat
Time: Thursday, November 24, 2011, 4:14 am

Hey could you please explain how to brake the y axis


Comment from Jon Peltier
Time: Thursday, November 24, 2011, 10:29 am

Bat -

Sorry, but I’m not going to teach people how to use a technique which is ineffective or counterproductive. Instead, try the panel chart approach described here.


Comment from James Mansell
Time: Friday, November 25, 2011, 6:45 am

Thanks for very helpful article, just working through I can’t work out what scale setting should be on the secondary axis? Can you let us know?

Thanks

James


Comment from Jon Peltier
Time: Friday, November 25, 2011, 8:54 am

James -

Good point. If my two scales are 0 to Y1 and 0 to Y2, I’ll set up the primary scale to -Y1 to +Y1, so the data falls in the top half of the chart, and the secondary scale from 0 to 2 Y2, so the data falls in the bottom half. I make both X axes the same, and make both cross at the automatic setting. The primary axis then bisects the chart and the secondary is at the bottom of the chart. I usually hide the labels and often the tick marks for the primary axis.


Comment from Joy
Time: Wednesday, November 30, 2011, 12:16 pm

NOOO…. @Jon, please bring back the broken axis page! It was so useful!


Comment from Jon Peltier
Time: Wednesday, November 30, 2011, 5:13 pm

Joy -

The technique is too complicated for most people, and the charts it makes are difficult to interpret correctly.


Comment from Ninad
Time: Thursday, December 1, 2011, 2:22 am

Hi Jon,

Can you please share the XL file for ease for novices like me.

Regards,


Comment from Joe
Time: Thursday, December 1, 2011, 8:22 pm

Hello Jon,

Can you please email me the old instructions for breaking the Y axis? I have an old slide that I made that way, and once a year I need to update it. My boss doesn’t like the panel chart version.

Thanks,

Joe


Comment from JJ
Time: Tuesday, December 6, 2011, 6:20 pm

Your method is no clearer, but nice try.


Comment from sixseven
Time: Thursday, December 8, 2011, 1:34 pm

Jon,

How do you truncate the data in the second series to <= to 7.5M? A simple method would be to copy the data to a different place in the spreadsheet and manually change the value, but I get the impression you did this through formatting?

Please help.

-sixseven


Comment from sixseven
Time: Thursday, December 8, 2011, 5:10 pm

Hi John,

Thanks for writing back. I just used this technique on an executive spend report, and they liked it.

So back to my initial question. Your instructions say:

“The secondary axis is scaled to show the smaller values. Note that the two very large values (>30M) have been truncated at a suitably small value (7.5M).”

How did you truncate the large values to 7.5M?

Thanks!

-67


Comment from Jon Peltier
Time: Thursday, December 8, 2011, 8:12 pm

“Truncate: To shorten by or as if by cutting off.” (thefreedictionary.com)

I plotted a smaller number, 7.5M instead of their complete value. This is done by copying the values into another range, changing the large numbers to 7.5, and plotting this range.


Comment from sixseven
Time: Friday, December 9, 2011, 1:38 pm

Hi Jon,

I’ll give you the benefit of that doubt that you didn’t intend for your message to be snarky. So, thanks for your reply and help!

I used another range too in my report. As you know, there can be many ways to accomplish the same task is excel. I was just wondering if you had a different approach when truncating the value. (formula, formating, etc…)

Thanks again!

-67


Comment from Jon Peltier
Time: Friday, December 9, 2011, 2:16 pm

I just manually changed the values. If I were building a reusable approach, I’d probably write some formulas or code to do this.


Comment from AJ
Time: Wednesday, December 14, 2011, 11:08 am

Hi Jon,

Your explanation looks very good and I totally agree with you for a bar chart application that you shouldn’t split the axis as it distorts the image. However for the problem I currently have, that isn’t a problem and I still need to split the axis.

I have two measurements that were taken over two system configurations and hence at two different times; between 10am and 11am for the first and between 6pm and 7pm for the second. Due to the type of measurement it is, I need to quote the times correctly (And so can’t just move one forward by modifying the time data). The time inbetween the two measurements has no relevance and the second measurement could have been taken directly after the first but it wasn’t. During the measurement itself, time is relevent. Therefore if I was to split the graph it would not be distorted by the way you suggest for bar charts. I don’t think the alternative you suggest is relevent for a time domain plot.

Do you know any other alternatives to splitting the axis in this case? Can you provide advice or links to your previous page showing how to split the axis?

Cheers,

AJ


Comment from Jon Peltier
Time: Wednesday, December 14, 2011, 11:51 am

AJ -

How many time points in all? Are they evenly spaced within the hour periods? Could you represent the time as elapsed time?

Can you plot one primary and one secondary, with time across top and bottom axes? You could either overlap the data (10am to 11am and 6pm to 7pm), or offset so each is in its part of the chart (10am to 12noon and 5pm to 7pm).


Comment from Bat
Time: Wednesday, December 21, 2011, 9:45 pm

Please teach us how to break Y axis according to the first picture.


Comment from Jon Peltier
Time: Thursday, December 22, 2011, 6:58 am

Quite a few requests for a tutorial on broken axes in charts. But, no, that technique is a bad one, and I will not do anything to perpetuate it.


Comment from AJ
Time: Wednesday, January 4, 2012, 4:31 am

Hi Jon,

Thanks for your advice. I had thought of that although was trying to avoid it. It does look reasonable although I still feel that for my application the split axis would be better. The reason I say this is because with the primary and secondary axis, you have to work out which axis is relevant to each plot in the graph rather than just look at it and it is obvious (as in the split axis method).

By the posts you’ve been receiving about the split axis and you’re replies, may I suggest you change the title of the page? I think you’re getting so many posts requesting the tutorial on split axis’ because that is what the page is called and that is what those coming here are wanting to find out (for better or for worse than other methods).

Happy New Year!

AJ


Comment from Rob
Time: Thursday, January 5, 2012, 2:18 pm

I need to do a broken y-axis chart with a line chart, as I am comparing returns over time in various market indexes. Is there an easy way to do this?


Comment from Jon Peltier
Time: Thursday, January 5, 2012, 2:25 pm

Rob -

There’s no easy way to split an axis in Excel, and I can think of no situation when it is reasonable to do so. That’s why I have permanently retired the old tutorial.


Comment from Rob
Time: Thursday, January 5, 2012, 2:30 pm

Thanks for the quick reply, I agree paneling is a better implementation for Bar Charts. I am using a line chart that compares a few stocks against each other, over time and a line chart allows us to easily see the change and the change relative to the other stocks, however seeing as some stock prices are a lot lower than other (some in low hundreds, others in high thousands) there is a huge amount of white space in the chart. I need them to maintain the scale against each other so log axis wont work, an paneling seems to make more sense for comparing magnitudes rather than percentage changes.

Thoughts?


Comment from Jon Peltier
Time: Thursday, January 5, 2012, 3:12 pm

Rob -

Does it make sense to normalize the data, so every series is 100 at a given time? Then you could be comparing the percentage change.


Comment from Rob
Time: Thursday, January 5, 2012, 3:15 pm

That is something that was discussed, thank you for your help, I think I have found a solution by moving the smallest data set to the secondary axis. If I keep the differential from min to max axis values the same for both I can position them near each other without losing the ability to see them relative one another. If I hide the smaller values on the primary axis and larger values on the secondary axis it makes it easy to see them closer together.

Thank you for all your help!


Comment from Lou Dean
Time: Wednesday, January 11, 2012, 7:08 am

*sobs*

Please can we have the instructions back?

I know that you don’t want to perpetuate a bad chart but I loved the split axis chart and it always worked for me.

I haven’t had to use it for a while and the panel chart just doesn’t cut the mustard!

*wanders off to find more tissues*


Comment from Partha Banerjee
Time: Wednesday, January 11, 2012, 5:34 pm

Hi Jon,
My daughter wants to use your concept for one of her project demo at Fulton County Tech Fair, GA. She is at her middle school. While I have seen your license agreement and understand that she can, still I will appreciate if you send your consent in email response.
Thanks in advance.


Comment from Marcin K
Time: Tuesday, January 17, 2012, 4:54 am

Hi Jon,

My problem is common with Robs, I`ve got a line chart and i have to break Y axis, unfortunately it is impossible to use other way than break the axis , cause this is one of the points of my exam :(

Could U provide any tutorial for line chart ?

I`ll be greatful … nobody knows how to do it :( and the column chart tutorial is not valid for line type :(


Comment from Naomi B. Robbins
Time: Tuesday, January 17, 2012, 7:30 am

Marcin,

One possibility is to use a full scale break. By a full scale break I mean two separate panels next to each other: one with the scale before the break and one with the scale after the break. This is more forceful than the two little parallel lines often used that are difficult to notice. I’ll add a figure as an example when time permits.


Comment from Johannes D
Time: Tuesday, January 31, 2012, 11:04 am

And another satisfied reader. I came for the broken y-axis and left as a convert panel diagram user. It’s still some handwork for the gradient, but much easier to maintain than an ugly axis hack.


Comment from Jon Peltier
Time: Tuesday, January 31, 2012, 1:11 pm

Johannes -

I’m glad some people get it. (You’d be surprised at the clamor to reinstate the broken axis protocol, which is not going to happen.)


Comment from Adrian
Time: Wednesday, February 8, 2012, 7:16 am

Dear Jon,

it is somewhat tedious to remove a tutorial that has been referenced by a bunch of forums and sites in the internet. This is a kind of not confortable situation since I lost my time to look for a similar tutorial.

To be very honest, it does not matter whether you think its not an appropriate way to communicate data using broken axis, it is the responsibility of the author of a paper, report, book, …

I think the removal of your tutorial gives me reason to return to the scientific plotting tool that is very expensive but provides the broken axis tool as built in option.

Cheers,

Adrian


Comment from Patrick
Time: Wednesday, February 8, 2012, 8:33 am

Adrian,

With respect, nonsense. This was Jon’s content. He owns it. If he no longer wishes to make it available, that is his choice alone. Unless you are a paying customer or employer, neither he nor any other blogger has any responsibility toward you with regard to making content available.

Patrick


Comment from Adrian
Time: Wednesday, February 8, 2012, 8:47 am

Patrick,

I fully agree with you. It is the blogger’s choice making available or not content he authored.
I just wanted to say that it is tedious if you are directed by several forums and Internet sites to a tutorial, which is not available anymore, full stop.
Best wishes,

Adrian


Comment from Jon Peltier
Time: Wednesday, February 8, 2012, 9:52 am

Adrian -

“it is somewhat tedious to remove a tutorial…”

It was not tedious at all to remove the tutorial in question. It was more tedious to set up a redirect, so visitors at least learn that there is no longer such a page and also read the rationale for its removal.

I can’t believe it was more tedious to find similar tutorials than to land on this page. Most pages that cited my old tutorial also cited others, usually several others, and I’m sure the search engines listed the others as well.

Was it tedious to read the rationale against using this technique? Or was it more tedious to be faced with the thought that the technique you wanted to use is frowned upon by visualization experts?

“it does not matter whether you think its not an appropriate way to communicate data”

On the contrary, it matters a great deal (at least to me) that what I write about are in fact what I consider appropriate approaches to communicate data. It also matters that I explain why certain techniques are or are not appropriate. If, after reading this explanation and considering alternative means to communicate data, a reader decides to use a technique that I consider inappropriate, that is what “does not matter” to me.


Comment from Joana
Time: Thursday, February 9, 2012, 7:38 am

Hi,

Thank you so much for this tutorial, I managed to get my data into a panel graph and it looks good, except for one think which I don’t manage to do: eliminating the useless parts of the primary and secondary axes. I tried pasting the code you gave ( [>=0]0,,”M”;;; for the primary axis and [<8000000]0,,"M";;; for the secondary axis ) but it doesn't work. Could this have to do with using a different Excel version, in this case Excel for Mac? It could also be that I'm just pasting it wrong, or that the code you gave is suited to your values but not mine, could you explain better what each part of the code means so I can adapt it to my situation?

Thanks a lot!

Joana


Comment from Jon Peltier
Time: Thursday, February 9, 2012, 9:19 am

Joana -

I wrote a tutorial about Excel’s number formats some time ago: Number Formats in Excel.

A brief note:
Number formats can have up to four sections, separated with semicolons. Generally the four segments refer to formats for positive;negative;zero;text. But the first two of these can have simple conditions included in square brackets.

[>=0] means use this format if the value is zero or greater
[<8000000] means use this format if the number is less than 8000000

My numbers were in millions, and rather than show, for example, all digits of 1000000, I used 0,,”M”. This deducts three zeros for each comma, making 1000000 look like 1. The “M” appends M, so finally, 1000000 looks like 1M.

The exact formats you will use depends on your own ranges of numbers.


Comment from Neith
Time: Wednesday, February 15, 2012, 2:55 pm

Thank you for taking the time to share your experience. The problem I am struggling with is that I need to make line graphs with a small range of high values (from 5,000 to 7,000). I use error bars to help my audience determine whether increases or differences are significant, but it’s very difficult to see the data if I am comparing two lines because they are much closer to eachother than they are to 0. Is it appropriate to “zoom in” on the range that my data is in, rather than showing the whole axis from 0 to 7000? A difference of a 500 units is a big difference, but if I show the whole scale from 0 to 7000 it’s difficult to see those differences. How can I make my graphs easy to read, but still accurate?


Comment from Jon Peltier
Time: Wednesday, February 15, 2012, 4:48 pm

Neith -

While a bar chart has the requirement (well, it often isn’t followed, to the detriment of the reader) that the value axis scale has to include zero, a line chart is not bound to zero. You could scale your axis from 5000 to 7000.

Of course, while this doesn’t distort the values themselves, it exaggerates the variability within this range.


Comment from Neith
Time: Wednesday, February 15, 2012, 4:52 pm

Thank you!


Comment from Pierre
Time: Sunday, February 19, 2012, 8:11 am

Hi,
Thanks for the helpfull tips. I am however stil looking for a way to break the Y-axis.

The reason is that Im plotting 2 sets of data on a date graph. The one set always vary between 2 and 5 on a specific day and the second between 30 and 60. Im using 2 x/y scatter line series on the same graph.

The requirement is to show these data points on the same graph but if i do it without some kind of break the smaller set becomes very cramped and unreadable.

Because the actual values are not related and Im more interested in the gradients it doesnt matter that it might visually be misleading in the sense that it appears to be values of similar magnitude.

If there is a better way please advise.

Thank you

Pierre
PS I have tried a log grapgh with some success but it isnt achieving what I want just yet.


Comment from Naomi B. Robbins
Time: Sunday, February 19, 2012, 9:25 am

Pierre,

Try a complete scale break. It will look like the panel charts in this post; however, you don’t need to use the gradient colors. The panel chart that Jon created serves as a model for what you should do. Your dates go where his cities are. The lower panel covers the 2 to 5 range and the upper panel covers the 30 to 60. Use your line graph where Jon has bars.


Comment from Pete
Time: Sunday, February 19, 2012, 3:33 pm

Please change the title of this article, you ginormous tosser. You are luring people here under false pretenses. I am fully aware of the issues surrounding breaking an axis and I don’t care about your opinions on it or your inelegant alternatives.

Yours truly

Pete


Comment from Heather
Time: Monday, February 20, 2012, 2:44 pm

Jon, I appreciate your rationale for not breaking the y axis. However, I want to break the x axis: I have some plant growth data, log toxicant concentration on the x axis, with the control at x = 1 and the following points (log scale) at 3.2, 3.4, 3.6, 3.8, 4.0. The control data is included by convention, but the main interest is a comparison of 4 different forms of toxicant at the 5 concentrations mentioned above. By having that long empty space between the control (x = 1) and the first toxicant response (x = 3.2) the 5 concentrations are all squashed together and the differences are lost. Do you have any suggestions for how that could be handled in excel? Thanks in advance.
Heather


Comment from Jon Peltier
Time: Monday, February 20, 2012, 4:52 pm

Heather -

Could you scale the axes so X = concentration/control and Y = response/control response? Then you wouldn’t need to plot the control data point. Of course, it depends on the magnitudes of the responses as well, but sometimes things done “by convention” are not always best practices.


Comment from Judy
Time: Saturday, March 3, 2012, 8:17 pm

I have a question. At school we are making posters of data charts to display in the classroom. I’ve increased the scaling to 200% so the chart will print on four pages. The problem is that some of the vertical axis values do not print. (i.e. On one of the pages the values all print and on another page of the enlarged poster, only a few of the values print, skipping some of the values on the axis. I’ve tried as much as I know to correct the problem. Have not been successful. Is there something I can do to correct this? Thank you for your time.


Comment from Marcela
Time: Monday, March 5, 2012, 8:00 pm

Thanks for the tutorial on panel charts. It helped me learn something new today (: Hoping the supervisor thinks it is appropriate for the readers of our report.


Comment from Javed
Time: Thursday, March 8, 2012, 1:00 am

Hi Jon,
I am having a problem to draw broken graph. I want to show the smaller values clearly the values for Y axis are 0.4 to 300. This link shows a broken line graph but didn’t say anything about how to draw the broken line graph in excel.


Comment from Liezl
Time: Monday, March 12, 2012, 12:33 pm

Dear Jon

I’m doing pharmacokinetic studies. Which means that I need to draw a concentration-time graph for the drug concentrations in the blood.

My time values range from 0 to 168 hours which really makes it difficult I want to draw the time as a broken x-axis, the panel method will not work for this type of chart unless I can somehow connect the by a line as we also work with the area under the curve to determine the bioavailability any ideas? Pleaaase help!

It would be greatly appreciated

Kind regards,
Liezl


Comment from Jon Peltier
Time: Monday, March 12, 2012, 10:07 pm

Liezl -

If the panel method interferes with calculations of area under the curve, wouldn’t the broken axis method as well?


Comment from Shiuan
Time: Wednesday, March 14, 2012, 4:54 pm

Dear Jon,

Thank you for such a good and smart method to display the chart. However, I have met a problem when I was generating the panel chart. On the step of formatting the axis, I was not able to delete part of the axis labels/entries as shown in the instruction above. I was not able to select only one scale label and if I press delete, the entire primary or secondary y axis just gone. Could you help? Thank you!


Comment from Jon Peltier
Time: Thursday, March 15, 2012, 7:14 am

Shiuan -

You cannot delete individual axis labels. You need to use custom number formatting to hide the labels based on conditions within square brackets in the formats.


Comment from Shiuan
Time: Thursday, March 15, 2012, 10:21 am

I got it! Thank you for helping!


Comment from Mara
Time: Friday, March 23, 2012, 1:53 pm

Hi Jon, I have a similar issue to Neith (feb. 15th). I have a stacked bar chart with one very large category and two much smaller ones (the first is generally 0 to about 97 percent and the other two make up the remaining 3 percent). I have scaled the Y axis to go from 93 – 100 percent to highlight the relationship of the two smaller categories, but I am worried that readers won’t notice the scale. Do you have a suggestion for making this more obvious?

thanks,
Mara


Comment from Jon Peltier
Time: Friday, March 23, 2012, 4:49 pm

Mara -

No matter how obvious the axis is, even if the reader knows it is there, the fact that the axis does not include zero means that you are hiding part of the larger bar, and the reader will not recognize the relative sizes of the bars. You should read Bar Chart Value Axis Scale Must Include Zero.

What about a clustered bar chart? You will have a very long bar and a couple very short bars. Or how about a clustered bar chart with just the two shorter bars? The longer one would be 100% minus the total of these two, so maybe you could omit it, but at least you can compare the smaller values.


Comment from Matt
Time: Monday, March 26, 2012, 9:25 am

Jon,

Frankly, I don’t really care about your opinion as to why breaking the y axis is a good idea or not. I see graphs of this nature in my scientific journals all the time. Are you chief editor of Nature?

Now I need to make one, I find your site in a google search, your first graph on this page is a freaking paragon of the type of graph I’m trying to make, and you don’t post how you made it.

Very frustrating.


Comment from Jon Peltier
Time: Monday, March 26, 2012, 10:44 am

Matt (and others) -

It’s my blog, so I can post about things I want to post about. I do not want to post about how to break an axis, because I think it interferes with the message in a chart. This is not just my opinion, either.

Also, just because things are presented in widely distributed periodicals does not make them good practices, only common practices. Or do you think USA Today sets the standard for presentation graphics?

Finally, I wish I had the control over Google’s search results that you seem to think I have. Google has their algorithm, and a whole industry exists trying to reverse-engineer the algorithm, but I don’t have time for this effort.


Comment from Alex
Time: Wednesday, March 28, 2012, 3:08 pm

Hi Jon,
I used your previous method (axis break) in all my previous graphs and I have one more to finish. It worked really well for me and I like to use the same method so I am consistant. If not I have to re-do everything from the beginig. Could you please please post it again so people who like that method can use it again.
Please!!!!!!!!!At least for few days.
Alex


Comment from Alex
Time: Wednesday, March 28, 2012, 4:36 pm

Hi Jon,
This is Alex again. After reading all your comments I know that you won’t publish the previous method again. I am trying with your new method but I am really not getting it. Speciialy when you say

“One by one, format the last three series to move them to the secondary axis. Then rescale the two axes as shown above, to allocate the primary and secondary to separate panels.”

Could you please explain it further? I could do the first step.
Thanks!


Comment from RJ
Time: Monday, April 2, 2012, 5:06 pm

Jon, thank you for your method. I’m having trouble figuring out how to “erase” half of the upper and half of the lower values on the primary and secondary vertical axes. You mention something about cleaning up the axis labels but I’m not really sure I understand that part. Could you clarify how to do this?

For example, how do you make the negative values on one axis and the useless 10-16M values on the right axis disappear?

Thank you!


Comment from RJ
Time: Monday, April 2, 2012, 5:15 pm

Jon, I see you responded to other users about the same problem. Thank you!


Comment from Patrick O
Time: Wednesday, April 4, 2012, 8:59 pm

John,
I have a big problem and since you’ve been so helpful I was hoping you could give me a hand! On Microsoft Excel 2007, I have added a 2nd y-axis. I want a few data points to share the data for the x-axis but display different y-axis data. When I add a second y-axis these few data points get thrown into a spot where they don’t display the x-axis data any longer! I have checked and messed around with it and all the data is correct. Can you give me any suggestions please


Comment from Jon Peltier
Time: Thursday, April 5, 2012, 1:37 pm

Patrick -

Do the primary and secondary series all use the same X values (category labels)? If not, you may see this kind of funny business. Is there a secondary X axis? What are the chart types of the series?


Comment from Frank
Time: Saturday, April 7, 2012, 6:57 pm

Hi Jon,
Thanks a lot for your post! it took me a while bu finally i could work it out and it looks good!
greetings from Switzerland,

Frank


Comment from Bob
Time: Tuesday, May 15, 2012, 2:41 pm

So instead of asking the audience to understand a gap in a single axis (one level of abstraction), you’re now asking them to 1) read double the amount of data, 2) understand the relationship between the top and bottom plots, and 3) understand the culture-sensitive abstraction of ‘disappearing into the clouds.’

And what do you plan on doing when the Y-axis is negative? Fade to blue gradient to look like the bars are sinking into the ocean?


Comment from Jon Peltier
Time: Tuesday, May 15, 2012, 8:27 pm

Bob -

I’m sorry you didn’t find the broken axis tutorial here that you expected. The single abstraction of the broken axis is very damaging to comprehension. The first two other points you’ve mentioned can easily be cleared up with an explanatory sentence in the figure caption, and the disappearing into the clouds thing, well, the faded tops of the tall bars look different than the flat-topped, constant-colored bars, so most observant people would know something is different, regardless of their familiarity with weather phenomena.


Comment from Bob
Time: Wednesday, May 16, 2012, 3:17 pm

Thanks for assuming that I was here for a tutorial on a broken axis plot. I actually found this page for completely unrelated reasons and was simply bemused by the comments.

For the record, I showed your two plots to the research group I’m in and the one next door (N=9; 2 undergaduates, 1 bachelors researcher, 1 MD/PhD student, 1 Masters student, 1 Masters researcher, and 3 PhDs each of very different generations). Only the bachelor’s researcher liked the panel plot and every other one (unprompted and without knowing the responses from the others) pointed out that it was very confusing to have to continuously jump up and down between the two panels, and that the fading gradient only made it look like the printer had screwed up, not that those two bars were somehow marked as different. So yes, they were very observant and immediately saw the gradient, and decided that it was just a lousy graphics job from the author. At that point, I then explained that it meant the bars ‘faded’ into the top panel, and they all (except for the one who liked the panel plot better) then stated that that was an even lousier explanation.

So again, 1) you now have to explain twice the data to the audience, and in a live talk that extra time is better spent presenting actual interesting results rather than going over the same thing twice, 2) to point out any trends, you have to jump between multiple panels and force the viewer’s eye to forget what they were previously seeing when they jump to the other abstraction level, and 3) spend time explaining that the chosen color scheme represents a transition between the same data presented twice.


Comment from Jon Peltier
Time: Wednesday, May 16, 2012, 5:25 pm

Bob -

Didn’t mean to get snarky there. This post seems to have attracted lots of displeasure.

Maybe the bar chart wasn’t appropriate for the panel chart. I generally would have used a line chart or dot plot. It’s messy with multiple series…

In any case, if you want to look at trends, you may need another chart type, and just deal with the range of values. Your researchers could probably handle logarithmic axes, which scare many audiences. The panel chart can remove outliers, enabling you to expand the rest of the data, and see trends in the remaining points.

The dot plot panel below shows the same data as the bar chart above. It’s nonsensical to talk about trends with categorical labels (the cities), but if these were numerical, you could see the trend in the left panel clearly with the outlier removed. The right panel shows all the data, a little too compressed to make out a slope in the small values. Maybe this better suits your sensibilities.

Write a comment

I welcome comments from my readers. If you have an opinion on this post, if you have a question or if there is anything to add, I want to hear from you. Whether you agree or disagree, please join the discussion.

If you want to include an image in your comment, post it on your own site or on one of the many free image sharing sites, and include a link in your comment. I'll download your image and insert the necessary html to display the image inline.

Read the PTS Blog Comment Policy.





Subscribe without commenting

Peltier Tech Chart Utilities for Excel Peltier Tech Waterfall Chart Utility Peltier Tech Box and Whisker Chart Utility Peltier Tech Cluster-Stack Chart Utility Peltier Tech Panel Chart Utility Peltier Tech Marimekko Chart Utility Peltier Tech Dot Plot Utility Peltier Tech Cascade Chart Utility

Create Excel dashboards quickly with Plug-N-Play reports.