gpt4 book ai didi

matlab - `surf` 图中出现意外颜色

转载 作者:行者123 更新时间:2023-12-02 21:16:43 25 4
gpt4 key购买 nike

我正在尝试编写一个 matlab 代码来回答以下问题:

Using functions linspace,meshgrid,surf and dot operations, plot the surface of the cones: z=sqrt(x^2+y^2) and z=-sqrt(x^2+y^2). Use the vector form of the coordinate transformation x=rcos(θ),y=rsin(θ), where 0 ≤ θ ≤ 2π and 0 ≤ r ≤ 2. Make the partition composed of 10 values of r and 22 values of θ.

所以,我的代码如下所示:

clear all
clc

theta = linspace(0,2*pi,22); r = linspace(0,2,10);
[R,T] = meshgrid(r,theta);
x = R.*cos(T); y = R.*sin(T);
z = R;
X = [x x]; Y = [y y]; Z = [z -z];
surf(X,Y,Z);

我得到下图: enter image description here

我不知道如何解释为什么上锥体是这样的颜色。

有什么办法可以解决吗?请帮忙,谢谢!

最佳答案

您正在为相同的 xy 放置多个 z 值。事实上,我很惊讶它竟然能以这种方式工作。

尝试分别绘制两个部分:

clear all
clc

theta = linspace(0,2*pi,22); r = linspace(0,2,10);
[R,T] = meshgrid(r,theta);
x = R.*cos(T); y = R.*sin(T);
z = R;
X = [x]; Y = [y]; Z = [z];
figure();
surf(X,Y,Z);

hold on;
surf(X,Y,-Z);

enter image description here

关于matlab - `surf` 图中出现意外颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30197238/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com