Effacer les filtres
Effacer les filtres

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

51 vues (au cours des 30 derniers jours)
Yeasir Mohammad Akib
Yeasir Mohammad Akib le 26 Sep 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

Réponses (1)

Image Analyst
Image Analyst le 26 Sep 2022
You'll probably have to use rectangle, which can display circles with solid colors.
  3 commentaires
Image Analyst
Image Analyst le 26 Sep 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 le 26 Sep 2022
Yes, I have changed the code.

Connectez-vous pour commenter.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by