How to plot 2D ring with surf ?

조회 수: 11 (최근 30일)
Maxime Dubart
Maxime Dubart 2017년 1월 12일
댓글: Janani Shekar 2021년 5월 7일
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.

답변 (1개)

Vandana Ravichandran
Vandana Ravichandran 2017년 1월 20일
편집: Vandana Ravichandran 2017년 1월 20일
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
Janani Shekar
Janani Shekar 2021년 5월 7일
Hi, can you explain this code in detail?

댓글을 달려면 로그인하십시오.

태그

Community Treasure Hunt

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

Start Hunting!

Translated by