Plot x^2+y^2=4
조회 수: 51 (최근 30일)
이전 댓글 표시
Hello, I have a little starter question about matlab. How do I plot a circle given by x^2+y^2=4?
Thank you.
댓글 수: 0
채택된 답변
Sky Sartorius
2020년 2월 25일
There are a few ways to go about this. One that is somewhat agnostic to what the equation is trying to represent (in this case, a circle) involves calculating the equation for the whole space, then plotting only an isoline of the target value.
[X,Y] = meshgrid(-3:.1:3,-3:.1:3); % Generate domain.
Z = X.^2 + Y.^2; % Find function value everywhere in the domain.
contour(X,Y,Z,[4 4]) % Plot the isoline where the function value is 4.
If you know more about your function and can turn it around into a function of only one variable (e.g., sine and cosine of t), that is preferable in most cases.
추가 답변 (3개)
James Tursa
2020년 2월 25일
E.g., since you know it is a circle with radius 2 centered at the origin;
ang = 0:0.01:2*pi;
x = 2*cos(ang);
y = 2*sin(ang);
plot(x,y);
hamza
2022년 6월 24일
편집: Image Analyst
2022년 6월 24일
Plot the contour plots of the circles x^2+y^2 of radius 1,2, 1.41,1.73.
댓글 수: 1
Image Analyst
2022년 6월 24일
radii = [1, 2, 1.41, 1.73];
viscircles([zeros(4,1), zeros(4,1)], radii);
axis equal
grid on;
Steven Lord
2022년 6월 24일
Another way to do this is to use the fcontour function.
f = @(x, y) x.^2+y.^2;
fcontour(f, 'LevelList', 4)
axis equal
If you want to see multiple contours, specify a non-scalar LevelList.
figure
fcontour(f, 'LevelList', 1:4:25)
axis equal
댓글 수: 2
Steven Lord
2022년 6월 24일
Note that viscircles is part of Image Processing Toolbox which means that not all users would have access to it.
참고 항목
카테고리
Help Center 및 File Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!