How to plot 2D ring with surf ?

15 Ansichten (letzte 30 Tage)
Maxime Dubart
Maxime Dubart am 12 Jan. 2017
Kommentiert: Janani Shekar am 7 Mai 2021
Hi !
I'm currently writing a code of the distribution of an electrical potential as a function of the radius r (as seen in the picture below) and the angle alpha (the angle of the circle, from 0 to 2pi) for a physic problem.
Using the function surf, I can plot the values of this potential at a certain time, as a function of alpha and psi, the radius, but it displays them in a square :
What I would like is to display the same graph, but as a ring form, just like the first picture, so it is more easy to picture the exact place inside the ring the corresponding potential is.
I have currently no idea how to begin. I would really appreciate your help !
Thanks a lot in advance, Best Regards.

Antworten (1)

Vandana Ravichandran
Vandana Ravichandran am 20 Jan. 2017
Bearbeitet: Vandana Ravichandran am 20 Jan. 2017
You can get started with the following example. Here we are obtaining the width and height of the figure using "Position" property. Using this we are able to calculate the center coordinates. We can draw circles using "viscircles" function, for a given center and radius.
f = figure;
axes = gca;
axes.Visible = 'off';
pos = f.Position;
w = pos(3);
h = pos(4);
center = [w/2 h/2];
viscircles(center,4,'Color','r');
viscircles(center,2.5,'Color','b');
  1 Kommentar
Janani Shekar
Janani Shekar am 7 Mai 2021
Hi, can you explain this code in detail?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by