Filling pie graph partitions without the Pie command
1 次查看(过去 30 天)
显示 更早的评论
Hi everyone,
I have created a code which basically produces a pie graph between two rings, but I am stuck at filling my partitions with different colors. Does anyone have an Idea to how to solve this? I tried using patch and fill but I can't seem to get them to follow the circles (they just connect the endlines of the partition with a line, not following the circle)
2 个评论
Sergey Kasyanov
2019-12-27
I will try to complete your code if you attache it or I will write my own code for plotiing a pie with filled sectors.
回答(1 个)
Chidvi Modala
2019-12-30
You can make you of following code
function pie_chart
% Define quadrants and color
r1 = 1; % Outer radius
r = 0.5; % Inner radius
v = [5 15 25 20 35];
C = {'r' 'b' 'm' 'c' 'g'};
theta= 0:0.01:2*pi;
idx_spokes = round( [1 cumsum(v)/100*length(theta) ] ) ; % find the indices of the spokes
for k=1:length(idx_spokes)-1
t = theta( idx_spokes(k):idx_spokes(k+1) ) ; % Theta for Inner ring
si=theta( idx_spokes(k)); % Start index of polygon to be filled
t1 = theta( idx_spokes(k+1):-1:idx_spokes(k) ) ; % Theta for Outer ring
x=[r*cos(t) r1*cos(t1) r*cos(si)];
y=[r*sin(t) r1*sin(t1) r*sin(si)];
plot(x,y);
hold on
fill(x,y, C{k} );
end
axis square
axis on
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Pie Charts 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!