How can I fill a circle after using the viscircles command?

105 visualizaciones (últimos 30 días)
Yeasir Mohammad Akib
Yeasir Mohammad Akib el 26 de Sept. de 2022
Comentada: Yeasir Mohammad Akib el 26 de Sept. de 2022
I am plotting some circles with certain radius. I want to fill the circles depeding on their colours. I have used the 'viscircle' command of MATLAB. So how can I improve my code? It seems like the facecolour input is not given for viscircles.
for l=1:length(newlist(:,1))
centers= [newlist(l,1) newlist(l,2)];
r=newlist(l,3);
if r == 1.5
k= [1 0 1]
elseif r==3
k=[0 1 0]
end
viscircles( centers, r,'LineStyle','-','LineWidth',0.1,'EdgeColor',k,'Facecolor',k);
%theta = 0 : 0.01 : 2*pi;
%x = r*cos(theta) + xcenter;
%y = r*sin(theta) + ycenter;
end

Respuestas (1)

Image Analyst
Image Analyst el 26 de Sept. de 2022
You'll probably have to use rectangle, which can display circles with solid colors.
  3 comentarios
Image Analyst
Image Analyst el 26 de Sept. de 2022
Yes you can use patch or fill though I think it's harder than rectangle because with patch and fill you have to make coordinates for all the perimeter points on the circle.
Yeasir Mohammad Akib
Yeasir Mohammad Akib el 26 de Sept. de 2022
Yes, I have changed the code.

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by