How to plot a circular Image?

7 visualizzazioni (ultimi 30 giorni)
ramin bba
ramin bba il 21 Lug 2014
Commentato: ramin bba il 21 Lug 2014
I want to plot a binary image like this:
However, I only want the red region to be shown in the figure.How can I do this?
tnx in advance
  1 Commento
Geoff Hayes
Geoff Hayes il 21 Lug 2014
Ramin - what exactly are your inputs to draw the above? Do you determine the radius of the red circle? Do you decide on the number of solid black balls that fill the red region? Do you decide on the radius of each solid black ball?

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 21 Lug 2014
You can draw only the red circle by using rectangle().
For other approaches to drawing circles, see the FAQ on circles, or see my attached demos.

Più risposte (1)

Robert Cumming
Robert Cumming il 21 Lug 2014
A couple of options for you:
% First create an axes and some data:
ax = axes;
ang=0:0.01:2*pi;
xp=1*cos(ang);
yp=1*sin(ang);
patch ( xp, yp, 'w', 'parent', ax )
axis ( ax, 'equal' )
% option 1 - hide the axes to leave your image:
set ( ax, 'visible', 'off' )
% option 2 - set the background of your image to be the same as the parent:
set ( ax, 'color', get ( get ( ax, 'parent' ), 'color' ) )
  2 Commenti
ramin bba
ramin bba il 21 Lug 2014
thanks Robert. A question:
should I use the above after I have read my image? 'cause it is not working properly! it actually puts a disk on my current image and hides a circular portion of it! here is what I do:
a=imread('...');
imshow(a);
ax = axes;
ang=0:0.01:2*pi;
xp=1*cos(ang);
yp=1*sin(ang);
patch ( xp, yp, 'w', 'parent', ax )
axis ( ax, 'equal' )
set ( ax, 'color', get ( get ( ax, 'parent' ), 'color' ) )
Robert Cumming
Robert Cumming il 21 Lug 2014
My example draws a circle as an example. You would need to remove that part. You only need the last part which hides the axes, or changes the background colour.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by