怎么用MATLAB画三维散点图

已知矩阵U=

5 5 5
7 2 1
4 7 2
6 1 6
2 6 7
3 3 4
1 4 3
问怎样才能以这个矩阵的每一行作为一个点的坐标,画出散点图。最好有坐标

1、对于三维图形其有x、y、z三个坐标轴,数据也要按三维确定。

2、首先需要将数据读取到MATLAB工作空间(workspace)中,使用xlsread()函数即可,使用绝对路径读取,因为不在MATLAB默认路径内,即a=xlsread('C:\Users\Administrator\Desktop\三维实验图.xlsx','sheet1')。

3、接着,需要将x1、y1、z1数据分别从矩a中提取出来,x1=a(:,2);y1=a(:,3);z1=a(:,4)。

4、然后使用三维散点图函数scatter3()显示x1、y1、z1三组数据在空间上的点,scatter3(x1,y1,z1,'k'); k代表的是点的形状-圆圈。

5、运行代码hold on;即可,然后读取第二组数据,代码如下:x2=a(:,6);y2=a(:,7);z2=a(:,8)。

6、接着再次对x2、y2、z2数据绘制空间分布点,运行:scatter3(x2,y2,z2,'p');此处的p和k是一样的意思,代表的是五角星点。

7、接下来,在加上坐标轴即可,运行:xlabel('x'),ylabel('y'),zlabel('z')。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-01
例子:
x=[4229042.63 4230585.02 4231384.96 4231773.63 4233028.58 4233296.71 4235869.68 4236288.29];
y=[431695.4 441585.8 432745.6 436933.7 428734.4 431946.3428705.0 432999.5];
z=[1.019 1.023 1.011 1.022 1.020 1.022 1.022 1.023];
scatter3(x,y,z)
注:x,y,z必须是等长度的数对(即三个等长的矢量)
第2个回答  推荐于2017-10-07
u=[5 5 5;
7 2 1;
4 7 2;
6 1 6;
2 6 7;
3 3 4;
1 4 3];
x=u(:,1)
y=u(:,2)
z=u(:,3)
plot3(x,y,z,'o')
grid on本回答被提问者采纳