MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   【求助】菜鸟求助(上一问题的延伸) (https://www.labfans.com/bbs/showthread.php?t=1542)

von 2008-03-05 17:27

恩 我刚开始上matlab的课,这是老师课后要我们练习的。不太会啊
另外 你也是长沙的,老乡啊老乡

von 2008-03-05 17:36

恩 关于题目的后续部分,是应该用Plot画出线来吧,但是怎么编循环程序让它一次把64条画出来呢?谢谢

shiqiang 2008-03-05 18:05

r(1,64)=1;
这句是赋值的意思,给矩阵r的1行64列赋值为1;这句话,也可以是r(1)=1;只要使r为一个向量就可以。
第二种的整体思路是
在极坐标轴上,利用旋转的首个位置(即起始直线)会在极坐标轴上标出这个特点来实现的,所以我想通过每次定义不同的起始直线来实现你所要求的那些线条。

von 2008-03-05 20:03

综合了一下大家的思路
t=linspace(0,2*pi,64);
x=exp(i*t);
y=x';
plot(y);m=0; A=[2 -1;-2 3];R=1;
kk=2*pi/64;
for k=0:kk:2*pi-kk
xi(m+1)=R*cos(k);
yi(m+1)=R*sin(k);
hold on
plot([0 xi(m+1)],[0 yi(m+1)]);
m=m+1;
end; m=0;for k=0:kk:2*pi-kk
xi(m+1)=R*cos(k);
yi(m+1)=R*sin(k);
hold on; line([0 xi(m+1)-yi(m+1)],[0 (-2)*xi(m+1)+2*yi(m+1)]); m=m+1;
end
axis equal 但后面一问为什么line([0 xi(m+1)-yi(m+1)],[0 (-2)*xi(m+1)+2*yi(m+1)]); 这样子不对?

von 2008-03-05 20:44

t=linspace(0,2*pi,64);
x=exp(i*t);
y=x';
plot(y);m=0; A=[2 -1;-2 3];R=1;
kk=2*pi/64;
for k=0:kk:2*pi-kk
xi(m+1)=R*cos(k);
yi(m+1)=R*sin(k);
hold on
plot([0 xi(m+1)],[0 yi(m+1)]);line([xi(m+1) 2*xi(m+1)-yi(m+1)],[yi(m+1) (-2)*xi(m+1)+3*yi(m+1)])
m=m+1;
end 改成这样子 但是斜率应该不是一样的啊

von 2008-03-06 00:01

t=linspace(0,2*pi,64);
x=exp(i*t);
y=x';
plot(y);m=0; A=[2 -1;-2 3];R=1;
kk=2*pi/64;
for k=0:kk:2*pi-kk
xi(m+1)=R*cos(k);
yi(m+1)=R*sin(k);
hold on
plot([0 xi(m+1)],[0 yi(m+1)]);line([xi(m+1) 3*xi(m+1)-yi(m+1)],[yi(m+1) (-2)*xi(m+1)+4*yi(m+1)])
m=m+1;
end
终于弄出来了 希望以后能继续讨论


所有时间均为北京时间。现在的时间是 17:08

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.