📄 demo_linclass.html
字号:
<span class=quotes>'btstop'</span>,hbtstop,...<br> <span class=quotes>'btclose'</span>,hbtclose,...<br> <span class=quotes>'btplay'</span>,hbtplay,...<br> <span class=quotes>'btreset'</span>,hbtreset,...<br> <span class=quotes>'btinfo'</span>,hbtinfo,...<br> <span class=quotes>'btload'</span>,hbtload,...<br> <span class=quotes>'btcreat'</span>,hbtcreat,...<br> <span class=quotes>'pualgo'</span>,hpualgo,...<br> <span class=quotes>'console'</span>,hconsole,...<br> <span class=quotes>'editer'</span>,hediter,...<br> <span class=quotes>'edeps'</span>,hedeps,...<br> <span class=quotes>'txeps'</span>,htxeps,...<br> <span class=quotes>'axes1'</span>,haxes1,...<br> <span class=quotes>'xbanim'</span>,hxbanim);<br> <span class=graph>set</span>(hfigure,<span class=quotes>'UserData'</span>,handlers)<br><br> <span class=comment>% Reset</span><br> demo_linclass(<span class=quotes>'reset'</span>,hfigure);<br><br> <span class=comment>% Put figure on desktop</span><br> <span class=graph>set</span>(hfigure,<span class=quotes>'Visible'</span>,<span class=quotes>'on'</span>);<br> drawnow;<br><br><span class=label>case</span> <span class=quotes>'iterhandler'</span><br> <span class=comment>% == Handler for edit line Iterations ===============</span><br> h=<span class=graph>get</span>(hfigure,<span class=quotes>'UserData'</span>);<br><br> iter=round(str2num(<span class=graph>get</span>(h.editer,<span class=quotes>'String'</span>)));<br> <span class=keyword>if</span> isempty(iter) | iter < 1, iter=1; <span class=keyword>end</span><br> <span class=graph>set</span>(h.editer,<span class=quotes>'String'</span>,num2str(iter));<br><br><br><span class=label>case</span> <span class=quotes>'epshandler'</span><br> <span class=comment>% == Handler for edit line Epsilon =======================</span><br> h=<span class=graph>get</span>(hfigure,<span class=quotes>'UserData'</span>);<br><br> <span class=comment>% if algorithm e-Kozinec is selected then ...</span><br> <span class=keyword>if</span> <span class=graph>get</span>(h.pualgo,<span class=quotes>'Value'</span>)==3,<br> <span class=graph>set</span>(h.edeps,<span class=quotes>'Enable'</span>,<span class=quotes>'on'</span>);<br> <span class=graph>set</span>(h.txeps,<span class=quotes>'Enable'</span>,<span class=quotes>'on'</span>);<br><br> epsil=str2num(<span class=graph>get</span>(h.edeps,<span class=quotes>'String'</span>));<br> <span class=keyword>if</span> epsil < 0,<br> epsil=1;<br> <span class=graph>set</span>(h.edeps,<span class=quotes>'String'</span>,num2str(epsil));<br> <span class=keyword>end</span><br> <span class=keyword>else</span><br> <span class=graph>set</span>(h.edeps,<span class=quotes>'Enable'</span>,<span class=quotes>'off'</span>);<br> <span class=graph>set</span>(h.txeps,<span class=quotes>'Enable'</span>,<span class=quotes>'off'</span>);<br> <span class=keyword>end</span><br><br><br><span class=label>case</span> <span class=quotes>'creatdata'</span><br> <span class=comment>% == Invoke data set creator ================================</span><br> createdata(<span class=quotes>'finite'</span>,2,<span class=quotes>'demo_linclass'</span>,<span class=quotes>'created'</span>,hfigure);<br><br><br><span class=label>case</span> <span class=quotes>'created'</span><br> <span class=comment>% == Load new created data set =============================</span><br><br> <span class=comment>% get handler and make this figure active</span><br> <span class=graph>figure</span>(hfigure);<br> h=<span class=graph>get</span>(hfigure,<span class=quotes>'UserData'</span>);<br><br> <span class=comment>% get file name</span><br> path=<span class=stack>varargin</span>{1};<br> name=<span class=stack>varargin</span>{2};<br> pathname=strcat(path,name);<br><br><span class=comment>% if checkdat(pathname,DATA_IDENT,2,[0 0])==1,</span><br> <span class=keyword>if</span> check2ddata(pathname),<br> file.pathname=pathname;<br> file.path=path;<br> file.name=name;<br> <span class=graph>set</span>(h.btload,<span class=quotes>'UserData'</span>,file);<br> demo_linclass(<span class=quotes>'loadsets'</span>,hfigure);<br> demo_linclass(<span class=quotes>'reset'</span>,hfigure);<br> <span class=keyword>else</span><br> errordlg(<span class=quotes>'This file does not contain required data.'</span>,<span class=quotes>'Bad file'</span>,<span class=quotes>'modal'</span>);<br> <span class=keyword>end</span><br><br><br><span class=label>case</span> <span class=quotes>'getfile'</span><br> <span class=comment>% == Invoke standard open file dialog ===================</span><br> <span class=comment>% Opens file and checks if contains appropriate data, </span><br> <span class=comment>% if yes loads data.</span><br><br> h=<span class=graph>get</span>(hfigure,<span class=quotes>'UserData'</span>);<br><br> [name,path]=uigetfile(<span class=quotes>'*.mat'</span>,<span class=quotes>'Open file'</span>);<br> <span class=keyword>if</span> name~=0,<br> file.pathname=strcat(path,name);<br> file.path=path;<br> file.name=name;<br> <span class=keyword>if</span> check2ddata(file.pathname),<br><span class=comment>% if checkdat(file.pathname,DATA_IDENT,2,[0 0])==1,</span><br> <span class=graph>set</span>(h.btload,<span class=quotes>'UserData'</span>,file);<br> demo_linclass(<span class=quotes>'loadsets'</span>,hfigure);<br> demo_linclass(<span class=quotes>'reset'</span>,hfigure);<br> <span class=keyword>else</span><br> errordlg(<span class=quotes>'This file does not contain required data.'</span>,<span class=quotes>'Bad file'</span>,<span class=quotes>'modal'</span>);<br> <span class=keyword>end</span><br> <span class=keyword>end</span><br><br><br><span class=label>case</span> <span class=quotes>'redraw'</span><br> <span class=comment>% == Redraw points in axes ==================================</span><br> h=<span class=graph>get</span>(hfigure,<span class=quotes>'UserData'</span>); <span class=comment>% uicontrol handlers</span><br><br> <span class=comment>% get point sets</span><br> sets=<span class=graph>get</span>(h.axes1,<span class=quotes>'UserData'</span>);<br> <span class=keyword>if</span> isempty(sets)==1,<br> <span class=jump>return</span>;<br> <span class=keyword>end</span><br><br> <span class=comment>% clears axes</span><br> <span class=graph>set</span>(<span class=graph>get</span>(h.axes1,<span class=quotes>'Children'</span>),<span class=quotes>'EraseMode'</span>,<span class=quotes>'normal'</span>);<br> clrchild(h.axes1);<br><br> h.<span class=graph>line</span>.handler=<span class=graph>line</span>(<span class=quotes>'EraseMode'</span>,<span class=quotes>'xor'</span>,<span class=quotes>'Color'</span>,<span class=quotes>'k'</span>,<span class=quotes>'Visible'</span>,<span class=quotes>'off'</span>,<span class=quotes>'Parent'</span>,h.axes1);<br> <span class=graph>set</span>(hfigure,<span class=quotes>'UserData'</span>,h); <span class=comment>% uicontrol handlers</span><br><br><span class=comment>%%% pplot(sets.X,sets.I);</span><br><span class=comment>%% ppoints(sets.X,sets.I);</span><br> ppatterns(sets);<br> demo_linclass(<span class=quotes>'drawline'</span>,hfigure,h.<span class=graph>line</span>.theta,h.<span class=graph>line</span>.alpha);<br><br> drawnow;<br><br><br><span class=label>case</span> <span class=quotes>'loadsets'</span><br> <span class=comment>% == Load data sets ========================================</span><br> <span class=comment>% Get file name from the pop up menu according to menu pointer. </span><br> <span class=comment>% Than clear axes,load new file and appear the points from the file.</span><br><br> h=<span class=graph>get</span>(hfigure,<span class=quotes>'UserData'</span>);<br><br> <span class=comment>% Clear axes</span><br> clrchild(h.axes1);<br><br> <span class=graph>set</span>(h.axes1, ...<br> <span class=quotes>'Box'</span>,<span class=quotes>'on'</span>, ...<br> <span class=quotes>'DrawMode'</span>,<span class=quotes>'fast'</span> );<br> xlabel(<span class=quotes>'feature x_1'</span>);<br> ylabel(<span class=quotes>'feature x_2'</span>);<br><br> <span class=comment>% No line</span><br> h.<span class=graph>line</span>.handler=-1;<br> <span class=graph>set</span>(hfigure,<span class=quotes>'UserData'</span>,h);<br><br> <span class=comment>% Get file name with sets</span><br> file=<span class=graph>get</span>(h.btload,<span class=quotes>'UserData'</span>);<br><br> <span class=comment>% Load sets</span><br> sets=load(file.pathname);<br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -