Matlab画如何多个椭圆?

我想在z=[0,10]之间画多个椭圆,椭圆为x=sin(t)+sin(b),y=cos(t)+sin(b),
最终目标是形成螺旋的椭圆柱。
我有500分,先给100,后给400.
我说的可能不详细,我是想实现如下效果:
b=[0,2*pi]
椭圆的圆心为(sin(b),sin(b))不断变化,但大小不变,
最终图像看起来是螺旋的线,这个线的截面是平行于z轴的椭圆。
接近了,能不能把这些分离的椭圆连起来,变成立体的柱体?
如:图片

方案一

clc

clear

N=100;

z=linspace(1,10,N);

t=20.*sin(z);

% plot(z,t);

hold on

b=linspace(0,2*pi);

r=(cos(b).^2/1+sin(b).^2/2).^(-2);

x=r.*cos(b);

y=r.*sin(b);

for i=1:length(z)

   plot(x+z(i),y+t(i));

end

title(['N=',num2str(N)]);

hold off

方案二:

clc

clear

%产生螺旋线

t=linspace(0,10);

x=cos(t);

y=sin(t);

z=-t;

plot3(z,x,y,'r')

%构造椭圆单元

b=linspace(0,2*pi);

r=(cos(b).^2+sin(b).^2/2).^(-1/2);

xp=r.*cos(b);

yp=r.*sin(b);

hold on

for i=1:length(z)

    xtemp=x(i)+xp;

    ytemp=y(i)+yp;

    ztemp=z(i).*ones(1,length(xp));

    plot3(ztemp,xtemp,ytemp);    

end

view

hold off 

我看你的图像,椭圆的取向也有倾斜,比较困难

温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-11
t=linspace(-pi,pi);
b=linspace(-pi,pi,25);
z=linspace(0,10,25);
hold on
for n=1:25
plot3(sin(t)+sin(b(n)),cos(t)+sin(b(n)),z(n)+zeros(1,100));
end
view(3);
axis equal
%如果理解不对你就再说清楚一些
第2个回答  2010-04-10
b=1;
N=100;
t=0:2*pi/N:2*pi;
x=sin(t)+sin(b);
y=cos(t)+sin(b);
for ii=1:5%画五个圆
z=ii*ones(1,N+1);
plot3(x,y,z);
hold on;
end
hold off
更改你想要的参数即可。

Matlab画如何多个椭圆?
hold off 我看你的图像,椭圆的取向也有倾斜,比较困难

高分求如何使用MATLAB随机画出n个椭圆(位置变化,长短不变,方向角也变化...
因为MATLAB画第二个椭圆是会先把第一个图删除 改为下面就可以 a=10;b=5;t=(0:0.00001:2)*pi;x=rand(1,2);x=rand(1,2);figure;hold on;for i=1:2 xx=a*cos(t)*cos(x(i)*pi)-b*sin(t)*sin(x(i)*pi);yy=a*cos(t)*sin(x(i)*pi)+b*sin(t)*cos(x(i)*pi);pl...

matlab三维画多个椭圆
方案一 clc clear N=100;z=linspace(1,10,N);t=20.*sin(z);plot(z,t);hold on b=linspace(0,2*pi);r=(cos(b).^2\/1+sin(b).^2\/2).^(-2);x=r.*cos(b);y=r.*sin(b);for i=1:length(z)plot(x+z(i),y+t(i));end title(['N=',num2str(N)]);hold off 方...

如何用matlab画椭圆?
matlab中通常可用两种方法画椭圆的曲线:使用隐函数绘图函数ezplot()使用椭圆的参数方程得到散点,然后plot()函数作图 下面实例演示绘制椭圆:(x-1)^2\/4 + (y-3)^2\/25 = 1 1、隐函数绘图函数ezplot()ezplot('(x-1)^2\/4 + (y-3)^2\/25 = 1',[-1 3 -2 8])2、参数方程作图>> t ...

matlab怎么画椭圆
matlab中通常可用两种方法画椭圆的曲线:使用隐函数绘图函数ezplot()使用椭圆的参数方程得到散点,然后plot()函数作图下面实例演示绘制椭圆:(x-1)^2\/4+(y-3)^2\/25=11、隐函数绘图函数ezplot()ezplot('(x-1)^2\/4+(y-3)^2\/25=1',[-13-28])2、参数方程作图>>t=0:0.05*pi:2*pi;>>...

在matlab中绘制椭圆和椭球
在MATLAB中绘制椭圆和椭球,利用ezplot函数可以轻松实现这一目标。例如,要绘制一个标准的椭圆,只需要输入相应的参数,ezplot函数便能生成所需的图形。对于椭球的绘制,可以使用meshgrid函数生成对应格点,接着通过矩阵乘法实现坐标变换。选择一个特定矩阵作为变换矩阵,将球面上的格点位置旋转拉伸到椭球面上,...

已知相位和幅值,在matlab中怎么画出椭圆
可以用phantom这个函数。P = phantom(E,n),n为生成的图像的大小n*n,E为你要生成椭圆的 信息,如E=[A1,a1,b1,x01,y01,phi1;A2,a2,b2,x02,y02,phi2]画两个椭圆,参数表示A灰度值,a b长轴短轴,x0,y0,椭圆中心点坐标,phi椭圆长轴与x轴偏离的角度 .显示的时候调用:imshow(P).。

如何用matlab做椭圆?
第二步:制作椭圆 在工具箱中选择“坐标系”\/“四象限坐标系”,添加参数t修改最小值为0、最大值为2*pi,并在其下面制作一条变量控制轴,通过“参数”\/“参数方程”命令,修改Y为a*cos(t),X为b*sin(t),Z为0,参数t从0到t. 隐藏椭圆方程的相关参数,添加数值坐标点.。创建点 (a,0)和...

matlab画椭圆?
1、现成的函数PlotEllipse(0,0,W,L,K),K是弧度。0,0表示中心点在原点,如果不在原点,输入相应的坐标就行了。2、另外一种是按照椭圆的极坐标方程,编程画点来画出来,就不说了。

怎么用matlab绘制超椭圆?
探索MATLAB的世界:绘制超椭圆的艺术 欢迎来到MATLAB的绘图之旅,这里是你零基础步入MATLAB图形绘制殿堂的绝佳起点。这堂65分钟的精华课程,我们将通过12个精心设计的绘图案例,逐步揭示MATLAB绘制二维曲线图的奥秘,特别聚焦于plot函数的深度解析,揭示其多种调用格式的无穷魅力。每一个步骤,都旨在帮助你理解...

相似回答