我是MATLAB的新手,我创建了一个三角形,我使用下面的代码来找到x,y的所有坐标。
side_1=[linspace(3,5,100);linspace(2,3,100)]
side_2=[linspace(5,4,100);linspace(3,5,100)]
side_3=[linspace(4,3,100);linspace(5,2,100)]
all_coordinates=[side_1,side_2,side_3]
我使用下面的代码来查找角度。
angles=zeros(300,1);
for i=1:300
angles(i)=atan(all_coordinates(2,i)/all_coordinates(1,i))*180/pi
end
由于视点是平面视图,y=0,x=角度我用这个代码来绘制角度。
for i = range(length(angles))
scatter(angles(i),0)
end
得到的错误数组索引必须是正整数或逻辑值。
不确定您试图对循环做什么,但问题是您的最后一个循环是错误的。range(length(angles)) =0
,您应该使用for i=1:length(angles)
而不是
此外,这两个循环是不必要的。不确定你想用散点图做什么,但你可以写:
angles=atan(all_coordinates(2,:)./all_coordinates(1,:))*180/pi
figure
scatter(angles,zeros(1,length(angles)))