Daniel@0: function sompak_sammon_gui() Daniel@0: Daniel@0: %SOMPAK_SAMMON_GUI A GUI for using SOM_PAK Sammon's mapping program Daniel@0: % from Matlab. Daniel@0: % Daniel@0: % sompak_sammon_gui Daniel@0: % Daniel@0: % Launches a GUI which allows the use of SOM_PAK Sammon's mapping Daniel@0: % program (sammon) from Matlab. Notice that to use this function, the Daniel@0: % SOM_PAK programs must be in your search path, or the variable Daniel@0: % 'SOM_PAKDIR' which is a string containing the program path, must be Daniel@0: % defined in the workspace. SOM_PAK programs can be found from: Daniel@0: % http://www.cis.hut.fi/research/som_lvq_pak.shtml Daniel@0: % Daniel@0: % See also SOMPAK_SAMMON, SOMPAK_GUI, SOMPAK_INIT_GUI, Daniel@0: % SOMPAK_TRAIN_GUI, SOM_GUI. Daniel@0: Daniel@0: % Contributed to SOM Toolbox vs2, February 2nd, 2000 by Juha Parhankangas Daniel@0: % Copyright (c) by Juha Parhankangas Daniel@0: % http://www.cis.hut.fi/projects/somtoolbox/ Daniel@0: Daniel@0: % Juha Parhankangas 050100 Daniel@0: Daniel@0: h=findobj(get(0,'Children'),'Tag','SammonGUI'); Daniel@0: Daniel@0: if ~isempty(h) Daniel@0: figure(h); Daniel@0: return; Daniel@0: end Daniel@0: Daniel@0: Daniel@0: a = figure('Color',[0.8 0.8 0.8], ... Daniel@0: 'PaperType','a4letter', ... Daniel@0: 'Position',[665 517 175 295], ... Daniel@0: 'Tag','SammonGUI'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Callback','close gcf', ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'Position',[8 20 50 20], ... Daniel@0: 'String','CLOSE', ... Daniel@0: 'Tag','Pushbutton1'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Callback','sompak_rb_control sammon_ok',... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'Position',[86 20 50 20], ... Daniel@0: 'String','OK', ... Daniel@0: 'Tag','Pushbutton2'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Position',[8 50 130 175], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame1'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 54 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame2'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[30 78 90 12], ... Daniel@0: 'String','RUNNING LENGTH', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText1'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[1 1 1], ... Daniel@0: 'Callback','sompak_rb_control rlen',... Daniel@0: 'Position',[48 57 50 20], ... Daniel@0: 'Style','edit', ... Daniel@0: 'Tag','RLEN'); Daniel@0: Daniel@0: udata.rlen=[]; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 96 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame3'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[33 119 90 12], ... Daniel@0: 'String','OUTPUT VARIABLE', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText2'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[1 1 1], ... Daniel@0: 'Callback','sompak_rb_control out_var',... Daniel@0: 'Position',[48 99 50 20], ... Daniel@0: 'String','''ans''', ... Daniel@0: 'Style','edit', ... Daniel@0: 'Tag','OUT_VAR'); Daniel@0: Daniel@0: udata.out_var='ans'; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 138 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame4'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[43 162 60 12], ... Daniel@0: 'String','OUTPUT FILE', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText3'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[1 1 1], ... Daniel@0: 'Callback','sompak_rb_control out_file',... Daniel@0: 'Position',[15 141 50 20], ... Daniel@0: 'Style','edit', ... Daniel@0: 'Tag','OUT_FILE'); Daniel@0: Daniel@0: udata.out_file=[]; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'Callback','sompak_rb_control out_ft',... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Max',3, ... Daniel@0: 'Min',1, ... Daniel@0: 'Position',[70 146 62 15], ... Daniel@0: 'String',{'No File';'mat-file';'cod-file'}, ... Daniel@0: 'Style','popupmenu', ... Daniel@0: 'Tag','OUT_FILE_TYPE', ... Daniel@0: 'Value',1); Daniel@0: Daniel@0: udata.out_file_type=''; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 180 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame5'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[60 203 25 12], ... Daniel@0: 'String','MAP', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText4'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[1 1 1], ... Daniel@0: 'Callback','sompak_rb_control map',... Daniel@0: 'Position',[15 183 50 20], ... Daniel@0: 'Style','edit', ... Daniel@0: 'Tag','MAP'); Daniel@0: Daniel@0: udata.map=[]; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'Callback','sompak_rb_control map_ft',... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Max',3, ... Daniel@0: 'Min',1, ... Daniel@0: 'Position',[70 188 62 15], ... Daniel@0: 'String',{'Variable';'mat-file';'cod-file'}, ... Daniel@0: 'Style','popupmenu', ... Daniel@0: 'Tag','MAP_TYPE', ... Daniel@0: 'Value',1); Daniel@0: Daniel@0: udata.map_type=''; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontSize',12, ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'Position',[41 230 62 12], ... Daniel@0: 'String','SAMMON', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText5'); Daniel@0: Daniel@0: Daniel@0: set(gcf,'UserData',udata);