www.gusucode.com > mbcdesign 工具箱 matlab 源码程序 > mbcdesign/@coninputfactor/DataRange.m
function obj = DataRange(obj,data) %DATARANGE set the range based on data % % obj = DataRange(obj,data) % Copyright 2008 The MathWorks, Inc. data = double(data); n = size(data,2); R = zeros(2,n); for i=1:n R(:,i) = calcDataRange(data(:,i)); end obj = setRange(obj,R); function R = calcDataRange(data) R = [min(data,[],1);max(data,[],1)]; if R(2)-R(1)<eps(max(abs(R))) % handle case where all points are identical R = R(1)*[0.9 1.1]'; if R(2)-R(1)<eps R = [-1 1]'; else R = sort(R); end end