Conditional Formatting of donut chart - excel

All,
I have a donut chart that indicates widgets that passed inspection as a percentage over total widgets (passed and failed). What I am trying to do is add some kind of conditional formatting to the ring segment that shows percentage of widgets that passed inspection, based on the percentage of widgets that actually passed inspection, such that the whole segment is either red if less than 75% passed, yellow if up to 90% passed, and green if over 90%

All,
Just thought I'd let you know I found a way to accomplish this. First, I created a column chart for widgets and for my different color schemes (such that we would have a clustered column chart with two clusters). Then, I set the widgets passed column chart to a secondary axis.
Next, I changed the chart type of both axis to a donut chart (note, donut charts do not let you set a secondary axis directly, which is why we have to do this in a column chart or line chart first).
Next, for the data series representing the different colors, I used the formulas =if([passed]>=.9,1,0), =if([passed]>=.75,1-R[-1]C,0), and 1-sum(R[-2]C:R[-1]C) to fill the values for the ring on the primary axis that is to represent different colors.
After this, it was simply a matter of adjusting the formatting on the primary and secondary axis, making the [passed] ring segment transparent, and using 1-[passed] to calculate a failed segment of widgets.
I hope that made sense to anyone else trying to accomplish this, but let me know if any questions (or if you have done this before and have a better way to explain, fill free to edit this).

Related

How To Make Line chart,so that the line chart does not overlap

Hi, I have trouble with my line chart here, the line chart is overlaping and it makes another line is not visible or covered up.
If the data is so similar then the lines will overlap.
One thing you can start with is using a false y-axis zero, starting the chart at, say, 50%, this may provide sufficient separation if the values do have differences.
Is this specific type of line chart necessary?
A 3D Line chart might get past the problem.
Image of a 3D chart with similar data in 2 series
If you want to stop similar/identical lines overlapping without changing their actual values, you're going to need to plot one of those lines on a different scale:
in the 'chart design' tab hit 'change chart type'
change it to 'combo chart', ad set both series as lines but in one of them, tick the box for 'plot on secondary axis'. Or, you could set one series as a different type of chart, e.g. a bar chart.
If both are lines and both axes default to the same scale (which is quite probable), you'll want to edit one of them to adjust the scale. Right click on a chart element and hit 'format', then select either 'vertical axis options' or 'secondary vertical axis options' from the dropdown, then click the fourth icon (little bar chart) and adjust the minimum and/or maximum bounds.
Hopefully that should separate the lines out without changing the values they actually depict. However, if it really comes to that, it might be easier to set them as two different charts. Certainly would make it easier to interpret the values.

How do I create a contour map like the one in the attached image? (preferably in Excel, but open to other options)

I need to create a graph that properly represents the profit-maximizing model of aircraft in different scenarios. I apologize in advance for my lack of understanding in what exactly to call it. As mentioned, I have found the type of graph that would best represent this, but cannot figure out how to code/create it. I have tried using Excel and Think-Cell (and either one of them may work, I just haven't figured out how) and haven't had much luck. The image below represents the ideal graph, linked here:
Does anyone have any idea how to best go about this? Thanks in advance.
Edit: The data I have now looks like this, linked here:
You need to use the data to generate a Stacked Column chart.
Here is how I set up my own example data (before you posted your own data format):
Next, select all rows and only the first four columns of the data (42R x 5C) and Insert-->Charts-->2D Column-->Stacked Column. You should get a chart like this:
Then change the vertical axis options to show Bounds Min=1.0, Max=4.0, Units Major=0.2, Minor=0.1.
Next, select any of the data series in the chart and format the Series Options for Series Overlap=100%, Gap Width=0%.
After that, I deleted the Title and Legend, set the Line Style for both Axis to Solid Fill, Black Color. Then I changed the data series colors to be close to your example. Lastly, make sure the chart is selected (the border is highlighted with the squares at the corners), then Insert a TextBox over your data and type "B747-200P2F" and manually place it over the correct data area. Repeat this for the other series and you get this:
Finally, we'll work on the Jet Fuel price line. This series will be added to the chart, then plotted on the secondary axis and it's chart type changed to Line.
To start, select only the Jet Fuel price column (F1:F42) and then copy that range into the clipboard. Then, make sure the chart is selected and, from the Home ribbon, select Paste Special. Use the default settings, or choose Add cells as New Series, Values (Y) in Columns, check Series Names in First Row, uncheck Categories (X Labels) in First Column, then click OK. (Not much will seem different on the chart yet!)
The next steps are important to take in order (at least for me). Select only the "Jet Fuel Price" series and change the Series Options to Plot on Secondary Axis. Then change the axis options to set the range from 1.0 to 4.0 and set labels to None. Just so we're tracking, here's what I have so far:
The (almost) final step is to select only the "Jet Fuel Price" series again, then right click it and choose Change Series Chart Type. Make sure you select the Combo chart type and make the selections for each of the series chart types as indicated in this picture:
Now (finally!) just add another textbox, put in your label and set the text color to red.

Creating a histogram with numerical x-axis in excel

I would like to create a bar-chart (or a histogram?) with vertical bars and a numerical x-axis , but I do not know how/where to start. I have MS-Excel and Origin-plot available with me. My intended chart would look like this:
You can more or less get what you want by adding and styling error bars appropriately to a scatter plot. The error bar is a simple way to force Excel to draw a line under/over the point.
Chart with data and error bars
Couple steps
Make an XY scatter chart
Add the error bars and delete the horizontal ones that come up
Set the negative error bar for the points to be equal to the same value that is being plotted
Set the positive error bar to 0 so it does not show
Change the formatting on the error bar to be thicker
Possible hide the initial dot shown so that it is bar only
You could take these steps and codify them with some VBA to prevent the tedious nature of doing this multiple times. Setting error bars is one of the worst activities to have to do continually.
I believe you should also be able to get your desired colors by adding multiple series. Possibly all the more reason to do this with VBA.

Multiple axis line chart in excel

I'm looking for a multiple axis line chart similar to the one in the image below, (which is a javascript chart made by amcharts).
Does excel have an option to draw charts line these? Note there are 3 Y axes, and 3 line charts allowing you to compare data.
Is it possible to get more than 3 data points, each with unique axis on one chart ?
It is possible to get both the primary and secondary axes on one side of the chart by designating the secondary axis for one of the series.
To get the primary axis on the right side with the secondary axis, you need to set to "High" the Axis Labels option in the Format Axis dialog box for the primary axis.
To get the secondary axis on the left side with the primary axis, you need to set to "Low" the Axis Labels option in the Format Axis dialog box for the secondary axis.
I know of no way to get a third set of axis labels on a single chart. You could fake in axis labels & ticks with text boxes and lines, but it would be hard to get everything aligned correctly.
The more feasible route is that suggested by zx8754: Create a second chart, turning off titles, left axes, etc. and lay it over the first chart. See my very crude mockup which hasn't been fine-tuned yet.
The picture you showd in the question is actually a chart made using JavaScript. It is actually very easy to plot multi-axis chart using JavaScript with the help of 3rd party libraries like HighChart.js or D3.js. Here I propose to use the Funfun Excel add-in which allows you to use JavaScript directly in Excel so you could plot chart like you've showed easily in Excel. Here I made an example using Funfun in Excel.
You could see in this chart you have one axis of Rainfall at the left side while two axis of Temperature and Sea-pressure level at the right side. This is also a combination of line chart and bar chart for different datasets. In this example, with the help of the Funfun add-in, I used HighChart.js to plot this chart.
Funfun also has an online editor in which you could test your JavaScript code with you data. You could check the detailed code of this example on the link below.
https://www.funfun.io/1/#/edit/5a43b416b848f771fbcdee2c
Edit: The content on the previous link has been changed so I posted a
new link here. The link below is the original link
https://www.funfun.io/1/#/edit/5a55dc978dfd67466879eb24
If you are satisfied with the result you achieved in the online editor, you could easily load the result into you Excel using the URL above. Of couse first you need to insert the Funfun add-in from Insert - My add-ins. Here are some screenshots showing how you could do this.
Disclosure: I'm a developer of Funfun
There is a way of displaying 3 Y axis see here.
Excel supports Secondary Axis, i.e. only 2 Y axis. Other way would be to chart the 3rd one separately, and overlay on top of the main chart.
An alternative is to normalize the data. Below are three sets of data with widely varying ranges. In the top chart you can see the variation in one series clearly, in another not so clearly, and the third not at all.
In the second range, I have adjusted the series names to include the data range, using this formula in cell C15 and copying it to D15:E15
=C2&" ("&MIN(C3:C9)&" to "&MAX(C3:C9)&")"
I have normalized the values in the data range using this formula in C15 and copying it to the entire range C16:E22
=100*(C3-MIN(C$3:C$9))/(MAX(C$3:C$9)-MIN(C$3:C$9))
In the second chart, you can see a pattern: all series have a low in January, rising to a high in March, and dropping to medium-low value in June or July.
You can modify the normalizing formula however you need:
=100*C3/MAX(C$3:C$9)
=C3/MAX(C$3:C$9)
=(C3-AVERAGE(C$3:C$9))/STDEV(C$3:C$9)
etc.
Taking the answer above as guidance;
I made an extra graph for "hours worked by month", then copy/special-pasted it as a 'linked picture' for use under my other graphs. in other words, I copy pasted my existing graphs over the linked picture made from my new graph with the new axis.. And because it is a linked picture it always updates.
Make it easy on yourself though, make sure you copy an existing graph to build your 'picture' graph - then delete the series or change the data source to what you need as an extra axis. That way you won't have to mess around resizing.
The results were not too bad considering what I wanted to achieve; basically a list of incident frequency bar graph, with a performance tread line, and then a solid 'backdrop' of hours worked.
Thanks to the guy above for the idea!
Best and Free ( maybe only) solution for this is google sheets.
i don't know whether it plots as u expected or not but certainly you can draw multiple axes.
Regards
keerthan

How to plot Bubble chart with plots outside axis area using Excel

Im using Excel for Mac 2011 and I have the following figure
I would like to still show the bubbles outside of the available chart area, while keeping the maximum and minimum axes values unchanged.
Create an identical chart with the same data, but with axis limits that show the full bubbles. Then set all the formatting in the chart other than the bubbles to the equivalent of "none", i.e, no axis labels, chart outlines, gridlines, chart and plot borders, background color, etc.
With very careful sizing and positioning of this bubbles-only chart over the original chart, you can get the bubbles to extend beyond the plot area of the original. If the size or position of a bubble is a little off, modify the overlay chart's data by the tiny amount needed to get the bubble to cover the underlying original bubble. Turn off the formatting for the underlying bubbles as last step.
NOT programmatic, very trial and error, and fussy, of course, and I hope someone comes up with a more elegant way to achieve your goal. But I was able to get it to work on my Windows machine.

Resources