📄 fm_matrx.m
字号:
function fig = fm_matrx()% FM_MATRX create GUI for matrix visualizations%% HDL = FM_MATRX()%%Author: Federico Milano%Date: 11-Nov-2002%Version: 1.0.0%%E-mail: fmilano@thunderbox.uwaterloo.ca%Web-site: http://thunderbox.uwaterloo.ca/~fmilano%% Copyright (C) 2002-2006 Federico Milanoglobal Settings Theme Path Snapshot Fig File% check for data fileif isempty(File.data) fm_disp('Set a data file for running sparse matrix visualization.',2) returnend% check for initial power flow solutionif ~Settings.init fm_disp('Solve base case power flow...') Settings.show = 0; fm_set lf Settings.show = 1; if ~Settings.init, return, endendif Fig.matrx, figure(Fig.matrx), return, endmappe = {'hsv';'hot';'gray';'bone';'copper';'pink';'white';'flag'; 'lines';'colorcube';'vga';'jet';'prism';'cool'; 'autumn';'spring';'winter';'summer'};%screensize = get(0,'ScreenSize');h0 = figure('Color',Theme.color01, ... 'Units', 'normalized', ... 'CreateFcn','Fig.matrx = gcf;', ... 'DeleteFcn','Fig.matrx = 0; rotate3d off', ... 'FileName','fm_matrx', ... 'MenuBar','none', ... 'Name','Matrix Visualization', ... 'NumberTitle','off', ... 'PaperPosition',[18 180 576 432], ... 'PaperUnits','points', ... 'Position',sizefig(0.6,0.6), ... 'Resize','on', ... 'ToolBar','none');fm_set colormaph1 = axes('Parent',h0, ... 'Box','on', ... 'CameraUpVector',[0 1 0], ... 'CameraUpVectorMode','manual', ... 'Color',Theme.color11, ... 'ColorOrder',Settings.color, ... 'Position',[0.0765 0.2550 0.5897 0.6805], ... 'Tag','Axes1', ... 'XColor',[0 0 0], ... 'YColor',[0 0 0], ... 'ZColor',[0 0 0]);set(h0,'UserData',h1);h1 = uicontrol('Parent',h0, ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'ForegroundColor',Theme.color03, ... 'Position',[0.73219 0.49761 0.20317 0.4386], ... 'Style','frame', ... 'Tag','Frame1');h1 = uicontrol('Parent',h0, ... 'BackgroundColor',Theme.color02, ... 'Units', 'normalized', ... 'Callback','fm_view(5);', ... 'Position',[0.76121 0.5327 0.14512 0.052632], ... 'String','Jlfd Matrix', ... 'Tag','Pushbutton1');h1 = uicontrol('Parent',h0, ... 'BackgroundColor',Theme.color02, ... 'Units', 'normalized', ... 'Callback','fm_view(4);', ... 'Position',[0.76121 0.61085 0.14512 0.052632], ... 'String','Jlfv Matrix', ... 'Tag','Pushbutton1');h1 = uicontrol('Parent',h0, ... 'BackgroundColor',Theme.color02, ... 'Units', 'normalized', ... 'Callback','fm_view(3);', ... 'Position',[0.76121 0.689 0.14512 0.052632], ... 'String','Jlf Matrix', ... 'Tag','Pushbutton1');h1 = uicontrol('Parent',h0, ... 'BackgroundColor',Theme.color02, ... 'Units', 'normalized', ... 'Callback','fm_view(2);', ... 'Position',[0.76121 0.76874 0.14512 0.052632], ... 'String','State Matrix', ... 'Tag','Pushbutton1');h1 = uicontrol('Parent',h0, ... 'BackgroundColor',Theme.color02, ... 'Units', 'normalized', ... 'Callback','fm_view(1);', ... 'Position',[0.76121 0.84689 0.14512 0.052632], ... 'String','Complete Matrix', ... 'Tag','Pushbutton1');h1 = uicontrol('Parent',h0, ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'ForegroundColor',Theme.color03, ... 'Position',[0.33509 0.063796 0.32718 0.089314], ... 'Style','frame', ... 'Tag','Frame2');h1 = uicontrol('Parent',h0, ... 'CData',fm_mat('mat_arrowr'), ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'Callback',' brighten(0.1);', ... 'Position',[0.6075 0.0835 0.0375 0.05], ... 'TooltipString','Brighten color map', ... 'Tag','Pushbutton2');h1 = uicontrol('Parent',h0, ... 'CData',fm_mat('mat_arrowl'), ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'Callback',' brighten(-0.1);', ... 'Position',[0.57 0.0835 0.0375 0.05], ... 'TooltipString','Darken color map', ... 'Tag','Pushbutton2');h1 = uicontrol('Parent',h0, ... 'Units', 'normalized', ... 'Callback','String = get(gcbo,''String''); eval([''colormap '',String{get(gcbo,''Value'')}]);', ... 'BackgroundColor',Theme.color04, ... 'Position',[0.355 0.0835 0.20712 0.05], ... 'String',mappe, ... 'Style','popupmenu', ... 'Tag','PopupMenu1', ... 'Value',1);% Frame and push buttons for selecting the graph typeh1 = uicontrol('Parent',h0, ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'ForegroundColor',Theme.color03, ... 'Position',[0.7322 0.1914 0.2032 0.2536], ... 'Style','frame', ... 'Tag','Frame3');h1 = uicontrol('Parent',h0, ... 'CData',fm_mat('mat_surface'), ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'Callback','fm_view(6)', ... 'Position',[0.73219+0.0116 0.1914+0.0068+0.12 0.0900 0.1200], ... 'TooltipString','Surface visualization', ... 'Style','togglebutton', ... 'Tag','toggle1', ... 'Value',1);h1 = uicontrol('Parent',h0, ... 'CData',fm_mat('mat_mesh'), ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'Callback','fm_view(6)', ... 'Position',[0.73219+0.0116 0.1914+0.0068 0.0900 0.1200], ... 'TooltipString','Mesh visualization', ... 'Style','togglebutton', ... 'Tag','toggle2');h1 = uicontrol('Parent',h0, ... 'CData',fm_mat('mat_sparse'), ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'Callback','fm_view(6)', ... 'Position',[0.73219+0.0116+0.09 0.1914+0.0068+0.12 0.0900 0.1200], ... 'TooltipString','Sparsity visualization', ... 'Style','togglebutton', ... 'Tag','toggle3');h1 = uicontrol('Parent',h0, ... 'CData',fm_mat('mat_filpol'), ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'Callback','fm_view(6)', ... 'Position',[0.73219+0.0116+0.09 0.1914+0.0068 0.0900 0.1200], ... 'TooltipString','Filled Polygon', ... 'Style','togglebutton', ... 'Tag','toggle4');% Frame and push buttons for axis manipulationh1 = uicontrol('Parent',h0, ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'ForegroundColor',Theme.color03, ... 'Position',[0.0726 0.0638 0.2000 0.0893], ... 'Style','frame', ... 'Tag','Frame2');h1 = uicontrol('Parent',h0, ... 'CData',fm_mat('mat_rotate'), ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'Callback','rotate3d(Fig.matrx), , if(get(gcbo,''Value'')), set(findobj(gcf,''Tag'',''toggle7''),''Value'',0), zoom(Fig.matrx,''off''), end', ... 'Position',[0.0776 0.0685 0.0600 0.0800], ... 'TooltipString','Rotate graph', ... 'Style','togglebutton', ... 'Tag','toggle5');h1 = uicontrol('Parent',h0, ... 'CData',fm_mat('mat_grid'), ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'Callback','grid(get(Fig.matrx,''UserData''))', ... 'Position',[0.1426 0.0685 0.0600 0.0800], ... 'TooltipString','Grid', ... 'Style','togglebutton', ... 'Tag','toggle6');h1 = uicontrol('Parent',h0, ... 'CData',fm_mat('mat_zoomxy'), ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color02, ... 'Callback','zoom, if(get(gcbo,''Value'')), set(findobj(gcf,''Tag'',''toggle5''),''Value'',0), rotate3d(Fig.matrx,''off''), end', ... 'Position',[0.2076 0.0685 0.0600 0.0800], ... 'TooltipString','Zoom', ... 'Style','togglebutton', ... 'Tag','toggle7');h1 = uicontrol('Parent',h0, ... 'Units', 'normalized', ... 'BackgroundColor',Theme.color03, ... 'Callback','close(gcf);', ... 'FontWeight','bold', ... 'ForegroundColor',Theme.color09, ... 'Position',[0.73087 0.065391 0.20317 0.089314], ... 'String','Close', ... 'Tag','Pushbutton3');if nargout > 0, fig = h0; end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -