tplot.m

来自「应用matlab的GUI功能设计用户图形界面的一些例子.」· M 代码 · 共 55 行

M
55
字号
function tplot(data,draw,pos,UNITCONVERT,DIS,color,plotaxis,lines)
%data为需画数据,数据按行存贮
%draw为需画的行号,如[1 5 3],draw(1)为横轴变量
%pos为需画的列号,如[2,4:5]
%UNICONVERT为单位换算,可为一个倍数,或一个函数如{1,0.1,'sin'}
%DIS为对各行量的描述,如{'time','temperature','density'}
%color为各曲线颜色,如{'r','b'};
%plotaxis为所画的轴的句柄
%lines为所要更改的曲线

%------截取数据-------
m=size(data,1);%行数
for i=1:m
    t(i,:)=data(i,pos);
end
data=t;clear t;
for i=1:length(draw)
    t(i,:)=data(draw(i),:);
end
data=t;clear t;
%-----------------------  

%-----单位换算------
s=size(data);
m=s(1);%行数
for i=1:m
    if ischar(UNITCONVERT{draw(i)})
        func=UNITCONVERT{draw(i)};        
        data(i,:)=eval([func,'(','data(i,:)',')']);
    elseif UNITCONVERT{draw(i)}
        times=UNITCONVERT{draw(i)};
        data(i,:)=data(i,:)*times;
    end
end
%--------------------

for i=2:length(draw)
    c=color{i-1};
      set(lines(i-1),'xdata',data(1,:),'ydata',data(i,:),'color',c, 'tag',num2str(DIS{draw(i)}));
%    line(data(1,:),data(i,:),'color',c,'parent',plotaxis,'EraseMode','none', 'tag',num2str(DIS{draw(i)}));
end

drawnow


  
  
  




   
   

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?