Meshing of a surface plot?
조회 수: 2 (최근 30일)
이전 댓글 표시
Hello there. I have a bit of trouble with my code. It's supposed to 3D plot with the mesh, and surface plot command the following equation: e^(x+i*y) with the intervals -1 > x >1 and -2pi > y > 2pi. I keep getting an error that the matrix dimensions must agree, but I don't know why that is occurring. Can someone help?
x = -1:.1:1;
y = -2*pi:.1:2*pi;
z = exp(x+i.*y);
[Xm, Ym] = meshgrid(x,y);
surf(x,y,z)
댓글 수: 0
답변 (1개)
Star Strider
2017년 11월 16일
Calculate ‘z’ After defining ‘Xm’ and ‘Ym’, and use those as the arguments:
x = -1:.1:1;
y = -2*pi:.1:2*pi;
z = @(x,y) exp(x+i.*y); % Create Anonymous Function For Ceonvenience
[Xm, Ym] = meshgrid(x,y);
surf(x,y, abs(z(Xm,Ym)))
You didn’t define ‘i’ so both MATLAB and I believe you want the imaginary operator. The plots will not render the imaginary values, so here I used the abs function to plot the magnitude.
댓글 수: 2
Star Strider
2017년 11월 16일
My pleasure.
You can either create a separate plot with the contour or contourf functions, or add a contour plot below the surf plot by using the surfc function. (The meshc function adds a contour plot to mesh plots.)
참고 항목
카테고리
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!