📄 untitled.m
字号:
switch s
case 1
set(allaxes(1),'xlim',[Xmin,Xmax],'ylim',[Ymin,Ymax]);
case 2
set(allaxes(2),'xlim',[Xmin,Xmax],'ylim',[Ymin,Ymax]);
case 3
set(allaxes(3),'xlim',[Xmin,Xmax],'ylim',[Ymin,Ymax]);
case 4
set(allaxes(4),'xlim',[Xmin,Xmax],'ylim',[Ymin,Ymax]);
case 5
set(allaxes(5),'xlim',[Xmin,Xmax],'ylim',[Ymin,Ymax]);
case 6
set(allaxes(6),'xlim',[Xmin,Xmax],'ylim',[Ymin,Ymax]);
case 7
set(allaxes(7),'xlim',[Xmin,Xmax],'ylim',[Ymin,Ymax]);
case 8
set(allaxes(8),'xlim',[Xmin,Xmax],'ylim',[Ymin,Ymax]);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%这个子函数是用来对测量对象进行放大,会弹出一个输入框,让用户输入8个通道的倍数。
function equationdlg(hobject,eventdata,handles)
global hinput2;
prompt2={'请输入第一通道倍数:',...
'请输入第二通道倍数:',...
'请输入第三通道倍数:',...
'请输入第四通道倍数:',...
'请输入第五通道倍数:',...
'请输入第六通道倍数:',...
'请输入第七通道倍数:',...
'请输入第八通道倍数:'};
def2={'1','1','1','1','1','1','1','1'};
fields2={'equation1','equation2','equation3','equation4',...
'equation5','equation6','equation7','equation8'};
hinput2=inputdlg(prompt2,'Setup for equation',1,def2);
if ~isempty(hinput2)
hinput2=cell2struct(hinput2,fields2);
else
return;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%这个子函数是用来对测量单位进行设置,用户在弹出的对话框中输入8个通道的测量单位。
function measureunits(hobject,eventdata,handles)
global hinput1;
prompt1={'请输入第一通道的测量单位:',...
'请输入第二通道的测量单位:',...
'请输入第三通道的测量单位:',...
'请输入第四通道的测量单位:',...
'请输入第五通道的测量单位:',...
'请输入第六通道的测量单位:',...
'请输入第七通道的测量单位:',...
'请输入第八通道的测量单位:'};
def1={'mV','mA','mV','mA','mV','mA','mV','mA'};
fields1={'ch1units','ch2units','ch3units','ch4uits','ch5units','ch6units','ch7units','ch8units'};
hinput1=inputdlg(prompt1,'Setup for measure units',1,def1);
if ~isempty(hinput1);
hinput1=cell2struct(hinput1,fields1);
else
return;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%设置采样时间间隔,默认情况下该值为1。
function sampletimedlg(hobject ,eventdata,handles)
global sampletime;
prompt={'请输入数据采样间隔时间'};
def={'1'};
dlgtitle='Setup for sample time';
answer=inputdlg(prompt,dlgtitle,1,def);
if ~isempty(answer)
sampletime=str2num(char(answer));
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%这个子函数是用来对当前的线进行设置线宽的。
function slider_callback(hobject,eventdata,handles)
global hmainfig hinput1 hinput2 hcurrent sampletime;
global hresult;
allaxes=getappdata(hmainfig,'allaxes');
allline=getappdata(hmainfig,'allline');
h2=figure('position',[250 250 200 200],'menubar','none','numbertitle','off','name','修改线宽','windowstyle','modal','visible','off');
hslider=uicontrol('style','slider','units','normalized','position',[0.4,0.1,0.1,0.6],'value',0.5,'max',5,'min',0);
set(hslider,'sliderstep',[0.02 0.05]);
movegui(h2,'center');
str1='当前的线宽是:';
ht1=uicontrol('style','text','position',[10 160 110 20],'string',str1,'backgroundcolor',[0.8,0.8,0.8]);
set(ht1,'fontsize',11);
set(ht1,'units','normalized');
ht2=uicontrol('style','text','position',[110 160 20 20],'string',0.5,'backgroundcolor',[0.8 0.8 0.8],'fontsize',11);
set(ht2,'units','normalized','foregroundcolor','b');
setappdata(hmainfig,'ht2',ht2);
setappdata(hmainfig,'hslider',hslider);
uicontrol('style','text','position',[105 120 10 20 ],'string',5,'backgroundcolor',[0.8,0.8,0.8],'foregroundcolor','k','fontsize',12);
uicontrol('style','text','position',[105,16,10,20],'string',0,'backgroundcolor',[0.8,0.8,0.8],'foregroundcolor','k','fontsize',12);
set(hslider,'callback',...
['global hresult;',...
'global hmainfig;',...
'ht2=getappdata(hmainfig,''ht2'');',...
'hslider=getappdata(hmainfig,''hslider'');',...
'a=get(hslider,''value'');',...
'set(hresult,''linewidth'',a);',...
'set(ht2,''string'',sprintf(''%1.4g'',a));']);
set(h2,'visible','on');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%这个函数是用来添加一个新的通道。
% bijiao function
function bijiao(hobject,eventdata,handles)
global hinput1 hinput2 sampletime;
global hmainfig hcurrent hresult;
hsubfig=figure('menubar','none','numbertitle','off','position',[100,100,400,300],'name','双轴显示');
set(hsubfig,'defaultuicontrolfontsize',13,'resize','off');
set(hsubfig,'visible','off');
hsubtext=uicontrol(hsubfig,'position',[100,250,180,20],'style','text',...
'foregroundcolor',[0 0 1],...
'string','请您再选择一个通道:','backgroundcolor',[0.8 0.8 0.8]);
hsublist=uicontrol(hsubfig,'position',[110,120,150,100],'style','listbox',...
'foregroundcolor',[0 0 1],...
'backgroundcolor',[1 1 1],...
'string','channel1|channel2|channel3|channel4|channel5|channel6|channel7|channel8');
hsubpush=uicontrol(hsubfig,'position',[125,50,80,30],'style','push',...
'backgroundcolor',[0.8,0.8,0.8],...
'string','OK');
setappdata(hmainfig,'hsubfig',hsubfig);
setappdata(hmainfig,'hsublist',hsublist);
set(hsubpush,'callback',...
['global hmainfig;',...
'global hinput1;',...
'global hcurrent;',...
'allaxes=getappdata(hmainfig,''allaxes'');',...
'allline=getappdata(hmainfig,''allline'');',...
'hsubfig=getappdata(hmainfig,''hsubfig'');',...
'hsublist=getappdata(hmainfig,''hsublist'');',...
'haxes1=allaxes(1);',...
'haxes2=allaxes(2);',...
'haxes3=allaxes(3);',...
'haxes4=allaxes(4);',...
'haxes5=allaxes(5);',...
'haxes6=allaxes(6);',...
'haxes7=allaxes(7);',...
'haxes8=allaxes(8);',...
'htext2=getappdata(hmainfig,''htext2'');',...
'htext5=getappdata(hmainfig,''htext5'');',...
'htext6=getappdata(hmainfig,''htext6'');',...
'htext55=getappdata(hmainfig,''htext55'');',...
'htext66=getappdata(hmainfig,''htext66'');',...
'htext41=getappdata(hmainfig,''htext41'');',...
'htext42=getappdata(hmainfig,''htext42'');',...
'htext43=getappdata(hmainfig,''htext43'');',...
'channelnum=get(hsublist,''value'');',...
'if channelnum==1',...
'hnewaxes=haxes1;',...
'newunits=hinput1.ch1units;',...
'elseif channelnum==2',...
'hnewaxes=haxes2;',...
'newunits=hinput1.ch2units;',...
'elseif channelnum==3',...
'hnewaxes=haxes3;',...
'newunits=hinput1.ch3units;',...
'elseif channelnum==4',...
'hnewaxes=haxes4;',...
'newunits=hinput1.ch4units;',...
'elseif channelnum==5',...
'hnewaxes=haxes5;',...
'newunits=hinput1.ch5units;',...
'elseif channelnum==6',...
'hnewaxes=haxes6;',...
'newunits=hinput1.ch6units;',...
'elseif channelnum==7',...
'hnewaxes=haxes7;',...
'newunits=hinput1.ch7units;',...
'elseif channelnum==8',...
'hnewaxes=haxes8;',...
'hnewunits=hinput1.ch8units;',...
'end;'...
'close(hsubfig);',...
'if (hnewaxes==hcurrent)',...
'hwarndlg=warndlg(''此通道已经被显示,请你选一个其它的通道!'',''抱歉!!!'');',...
'set(hwarndlg,''position'',[285,300,250,80]);',...
'else;',... % hx,hy是hcurrent,hnewaxes下的子对象。分别代表相应的线。
'cc=get(hcurrent,''xlim'');',...
'dd=get(hnewaxes,''xlim'');',...
'if cc<dd;',...
'set(hcurrent,''xlim'',dd);',...
'else;',...
'set(hnewaxes,''xlim'',cc);',...
'end;',...
'set(allaxes, ''visible'',''off'');',...
'set(allline,''visible'',''off'');',...
'hx=get(hcurrent,''children'');',...
'hy=get(hnewaxes,''children'');',...
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -