MATLAB 2D 绘制抛物线旋转以形成 3D 圆锥体



我想使用以下方法制作圆锥曲面图:距离矢量'X=1:1:100'(大小 1 100)和数据矢量 Y=1:1:100(大小 1 100)。在二维中,图是一个抛物线方程'Y=100-X^2'(y> 0和-a <+a)。>

我想将线图旋转 180 度,每 1 度步长,围绕 x=0(y 轴),在 3D 空间中形成一个圆锥体。可能吗?拜托,任何想法都非常受欢迎。

这个来自Mathworks网站的3D极坐标图可能是你要找的:

http://www.mathworks.com/matlabcentral/fileexchange/13200-3d-polar-plot

它看起来像一个非常甜蜜的功能。请注意描述的"角度范围"属性。

但你也可以得到你想要的没有它:

figure(); hold on;
for theta = linspace(0, pi, 100) % Not exactly sure how you want to vary theta
    [T, R] = meshgrid(linspace(0, theta, 100), 1:100);
    [X, Y] = pol2cart(T,R); 
    Z = 100 - R.^2; % Compute the surface of revolution
    surf(X,Y,Z); % Plot the surface
    pause(1); % Wait one second
end

如果这不是您所描述的,或者您是否需要更多帮助,请告诉我。

最新更新