Pie chart color assignment

6 visualizaciones (últimos 30 días)
Sordin
Sordin el 21 de Jun. de 2018
Comentada: Sordin el 21 de Jun. de 2018
I am trying to make a pie chart of two quantities. Using a colormap, I have assigned two different colours to each of the quantities – one is green and the other one red.
In one of the charts the first quantity is at 100%, while in the other chart the second quantity is at 100%. So one chart has to be entirely red, and the other one entirely green. However, both charts always appear with the same colour:
And here is what I am trying to obtain:
So what is wrong here and how can we fix the problem?
Here is my code:
subplot(211)
x=[1,0];
pie(x)
colormap([0 0.70 0; 1 0.1 0]);
subplot(212)
x=[0,1];
pie(x)
Any help is greatly appreciated.

Respuesta aceptada

Jeffrey Eymer
Jeffrey Eymer el 21 de Jun. de 2018
Pie ignores non-positive values. Therefore, both arrays you declare are treated as the same to pie, and are interpreted as [1]. This is why you see that pie is treating both inputs as being 100% red.
One workaround you could use would be to call colormap twice, once after each plot. This would give you the desired colors. Other than that, it seems you would need to input some non-zero information into the pie chart. Otherwise, they will be ignored.
  1 comentario
Sordin
Sordin el 21 de Jun. de 2018
But calling it twice will not solve the problem because each time the last colormap will apply to the whole figure. Is there a way that each subplot can have its own separate colormap?

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Pie Charts en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by