在第四列的最大值和最小值之间,以0.1的间隔求在这个间隔中对应的第三列的值的盒形图,要求把所有范围中的盒形图画在一张图上,便于寻找规律
a=importdata('c:\data.txt'); %导入数据
[m,n]=size(a); %求原始矩阵的行列数
split=0.1; %分割值
splitcol=4 ; %分割第几列
plotcol=3; %待画图的列
maxx=max(a(:,4)); %最大值
minn=min(a(:,4)); %最小值
%求总分割数
if(maxx-minn)/split-floor((maxx-minn)/split)~=0 %floor取整函数
p= floor((maxx-minn)/split)+1;
else
p=(maxx-minn)/split;
end
bound=minn; %下边界
col=0; %待作图矩阵列
% 形成待作图矩阵,共13列,每列为第三列在第四列间隔区间0.05范围内的值
for i=1:1:p %共p个分割
col=col+1;
bound=bound+(i-1)*split; %%%边界每次移动split
row=0; % 待作图矩阵行
for j=1:1:m
if a(j,splitcol)>= bound &&a(j,splitcol)< bound+split
row=row+1;
matrix(row,col)=a(j,plotcol);
end
if row==0
matrix(1,col)=0;
end
end
end
boxplot(matrix) %画图
|