Analyzing competition is one of the key aspects of running a business. In this article, learn how to use Excel’s scatter plots to understand competition.
Recently, Kaiser at Junk Charts pointed to a very effective business chart that shows the dynamics of competitive land scape with ease.
The chart shown aside originally appeared in Asymco, shows how mobile handset market has changed between 2007 & 2010.
What is so special about this chart?
I like this type of chart because it clearly tells the story of what happened in mobile handset market between 2007 and 2010. It shows how then leader, Nokia, kept loosing profit share despite a tiny loss in market share. It shows how new entrants like Apple have eroded the profit share for others. [related: good charts tell stories]
The chart instantly lets me ask important questions like, “So what did Nokia do wrong?”, “How come RIM is also in the same league as Apple (ie both market share and profit share went up) ?” etc. and explore for answers.
And that is what a chart should do. It should present a story and poke our curiosity to ask questions (or address problems).
How to construct similar chart in Excel?
Here is how you can construct similar business chart in excel.
Step 1: Get your data
In case of analytical charts like this, getting correct data is all important. For the sake of example, we will use the same variables – Market Share & Profit Share for 4 fictitious products – A,B,C & D. The data is shown below:

Step 2: Re-arrange the data, so we get first and last values
This is very simple. Use cell references to extract the data for just first and last periods. Now make starting values as zero and calculate ending values. Something like this:

Step 3: Make a scatter plot
Select the data and make a scatter plot. When you are done, it should look something like this:

Step 4: Format the chart
Do the following to format the chart:
- Add lines to scatter plot so that starting and end point are connected

- Set arrow symbol as the end-point style for these lines (new feature in Excel 2007 and above)

- Remove grid lines and legend
- Add data labels to either starting or end points alone.
- Add axis labels, position them accordingly
- Make axis and labels subtle.
- Add a descriptive chart title
And you are done. The chart should look something like this:

Bonus Step: Making a scatter plot of absolute values
As you can see, the above chart only shows changes in market share and profit share of products between Q1-2008 and Q2-2010. But a more descriptive option would be to show absolute position of each product at both times.
Like this:

To make this chart, all the steps are same as above, just change your data to starting and end points, not the calculated ones.
Download Competition Analysis Chart Templates:
I have prepared a simple excel chart template to help you create similar charts on your own. Click below links to download.
You can see the chart construction steps in the downloaded workbook.
What do you think about this chart?
As I mentioned I really liked how this chart lays out the dynamics of market place without complicating or animating anything. I think it is both simple and elegant [related: keep your charts simple]
What do you think? Please share your opinion and ideas thru comments. Also, tell us how you would have plotted same data?
More Excel Charts for Analysis:
Excel charts are powerful visual tools for analysis and exploration. We have posted several useful chart templates & ideas on chandoo.org. Please visit these pages for more resources on charting & analytics.
















21 Responses to “How to Filter Odd or Even Rows only? [Quick Tips]”
Infact, instead of using =ISEVEN(B3), how about to use =ISEVEN(ROW())
So it takes away any chance of wrong referencing.
I like Daily Dose of Excel
I like it.
Just a heads up, you do need to have the Analysis ToolPak add-in activated to use the ISEVEN / ISODD functions. An alternative to ISEVEN would be:
=MOD(ROW(),2)=0
rather than use a formula, couldn't you enter "true" in first cell and "false" in the second and drag it down and than filter on true or false.
Just for clarification, is Ashish looking to filter by even or odd Characters or rows?
so many functions to learn!
Nice support by chandoo and team as a helpdesk. Give us more to learn and make us awesome. Always be helpful.......
In case you want to delete instead of filter,
IF your data is in Sheet1 column A
Put this in Sheet2 column A and drag down
=OFFSET(Sheet1!A$1,(ROWS($1:1)-1)*2,,)
(This is to delete even rows)
To delete odd rows :
=OFFSET(Sheet1!A$2,(ROWS($1:1)-1)*2,,)
If your numbered cells did not correspond to rows, the answer would be even simpler:
=MOD([cell address],2), then filter by 0 to see evens or 1 to see odds.
I sometimes do this using an even simpler method. I add a new column called "Sign" and put the value of 1 in the first row, say cell C2 if C1 contains the header. Then in C3 I put the formula =-1 * C2, which I copy and paste into the rest of the rows (so C4 has =-1 * C3 and so forth). Now I can just apply a filter and pick either +1 or -1 to see half the rows.
Another way, which works if I want three possibilities: in C2 I put the value 1, in C3 I put the value 2, in C4 I put the value 3, then in C5 I put the formula =C2 then I copy C5 and paste into all the remaining rows (so C6 gets =C3, C7 gets =C4, etc.). Now I can apply a filter and pick the value 1, 2, or 3 to see a third of the rows.
Extending this approach to more than 3 cases is left as an exercise for the reader.
Another way =MOD(ROW();2). In this case, must to choose betwen 1 and 0.
[...] How to Filter Even or Odd rows only [...]
very different style Odd or Even Rows very easy way to visit this site
http://www.handycss.com/tips/odd-or-even-rows/
Thanks for the tip, it worked like magic, saved having to delete row by row in my database.
Thanks!
Thankssssssssssssssss
Hi Chandoo- First of all thanks for the trick. It helped me a lot. Here I have one more challenge. Having filtered the data based on odd. I want to paste data in another sheet adjacent to it. How can I do that?
For Example-
A 1 odd
B 3 odd
C 4 even
D 6 even
I have fileted the above data for odd and want to copy the "This is odd number" text in adjacent/next sheet here. How can I do that. After doing this my data should look like this
A 1 odd This is odd number
B 3 odd This is odd number
C 4 even
D 6 even
Hi! Could you please help me find a formula to filter by language?
Thank you!
Chandoo SIR,
I HAVE A DATA IN EXCEL ROWS LIKE BELOW IS THERE ANY FORMULA OR A WAY WHERE I CAN INSTRUCT I CAN MAKE CHANGES , MEANS I WANT TO WRITE ONLY , THE FIG IS FRESH, BUT IN BELOW ROW IT WILL AUTOMATICALLY TAKE THE SOME WORDS FROM FIGS AND MAKE IN PLURAL FORM , WHILE USING '' ARE'' LIKE BELOW
The fig is fresh - row 1
Figs are fresh - row 2
The Pomegranate is red - row 3
Pomegranates are red - row 4
=IF(EVEN(A1)=A1,"EVEN - do something","ODD - do something else") with iferron (for blank Cell)