首先目录下存在一个 data.xlsx 的数据文件,数据内容如下:
(注意:实例所给文件不存在缺失值、异常值等,故没有进行数据预处理,各位读者应按自身实际情况判断数据是否需要进行预处理)
数据读入方法1:
>> a = xlsread('data.xlsx') % 自动提取表格中最大数值矩阵
a =
865 141 NaN 690 131
941 187 NaN 254 495
711 841 NaN 736 443
782 726 NaN 128 789
769 385 NaN 349 816
453 956 NaN NaN NaN
>> xy = [a(:,[1,2]);a(1:end-1,[4,5])] %提取x,y坐标
xy =
865 141
941 187
711 841
782 726
769 385
453 956
690 131
254 495
736 443
128 789
349 816
数据读入方法2:
clc,clear;
[a,b] = xlsread('data.xlsx','A2:F7') %不包含表头
a =
865 141 NaN 690 131
941 187 NaN 254 495
711 841 NaN 736 443
782 726 NaN 128 789
769 385 NaN 349 816
453 956 NaN NaN NaN
b =
6×4 cell 数组
{'基地R' } {0×0 char} {0×0 char} {'无名高地'}
{'基地S' } {0×0 char} {0×0 char} {'山谷1' }
{'基地T' } {0×0 char} {0×0 char} {'山谷11' }
{'101高地'} {0×0 char} {0×0 char} {'山谷01' }
{'12高地' } {0×0 char} {0×0 char} {'山谷001'}
{'116高地'} {0×0 char} {0×0 char} {0×0 char }
>> name = [b(:,1);b([1:end-1],4)] %提取地名
name =
11×1 cell 数组
{'基地R' }
{'基地S' }
{'基地T' }
{'101高地'}
{'12高地' }
{'116高地'}
{'无名高地'}
{'山谷1' }
{'山谷11' }
{'山谷01' }
{'山谷001'}
完整的脚本文件如下:
clc,clear
[a,b] = xlsread('data.xlsx','A2:F7'); %提取需要的数据,不需要表头
a = [ a( : , [1,2]) ; a([1 : end-1], [4 5])]; % 提取x,y坐标
b = [b(:,1);b([1:end-1],4)]; %提取地名
plot(a([1:3],1),a([1:3],2),'p'); %画前三个点
hold on
plot(a([4:end],1),a([4:end],2),'*'); %画其余点
text(a(:,1)+5,a(:,2),b) %对所有点进行标注
运行结果如下: