⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vis_patch.m

📁 很全的som工具箱 四个demo可为初学者提够帮助
💻 M
字号:
function p=vis_patch(lattice)% VIS_PATCH Defines the basic patches (hexa and rect) used in SOM_CPLANE%%  p = vis_patch(lattice)%%  Input and output arguments: %   lattice   (string) 'rect', 'hexa' or 'hexagon'%%   p         (matrix) size Lx2, defines the vertices of the patch%% This function produces vertex coordinates for a patch presenting% a map unit in hexagonal or rectangular lattice with its centre in (0,0). %% For more help, try 'type vis_patch' or check out online documentation.% See also SOM_CPLANE, PATCH.%%%% DETAILED DESCRIPTION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% vis_patch%% SYNTAX%  %  p = vis_patch(lattice)% % DESCRIPTION% % Forms a map unit patch for SOM_CPLANE function. Mainly a subroutine% of SOM_CPLANE, although can be used for on its own as well.%% REQUIRED INPUT ARGUMENTS%% lattice (string)% %    'hexa'  produces vertex coordiantes for a hexagoanl patch which %            has its center on (0,0), unit width, and a height of%            1.3334 units. This is not a regular hexagon but such that%            the node which has topological coordinates (a,b) has its%            center in the visualization at coordinates (a,b) for odd%            a and at (a,b+.5) for even a. The non-regular look of the%            patch is taken care simply by changing the axis ratio.%%    'rect'  produces vertex coordinates for a uniform rectangular patch.%            having its center on (0,0) and unit sidelength. Used as a%            subfunction in SOM_CPLANE.%%    'hexagon' produces vertex coordinates for a regular hexagonal patch.%            It may be used in som_cplane if, for some reason, truly%            regular hexagons are needed instead of the default unit%            markers which are not uniform, but have integer%            y-coordinates in the lattice.%% OUTPUT ARGUMENTS%% p (matrix) The 2-dimensional vertex coordinates: %%   case 'rect'        case 'hexa'                case 'hexagon'%    p=[[-.5 -.5];...     p=[[0     0.6667];...    p=[[0     0.5774];...%       [-.5  .5];...        [0.5   0.3333];...       [0.5   0.2887];...%       [ .5  .5];...        [0.5  -0.3333];...       [0.5  -0.2887];...%       [ .5 -.5]];          [0    -0.6667];...       [0    -0.5774];...%                            [-0.5 -0.3333];...       [-0.5 -0.2887];...%                            [-0.5  0.3333]];         [-0.5  0.2887]]; %% EXAMPLES%%  som_cplane(vis_patch('rect'),[6 5],'none');%  % this produces the same result as som_cplane('rect',[6 5], 'none') %  %  som_cplane(vis_patch('hexa'), vis_unit_coord('hexa',[6 5]), 'none');%  % produces in principle the same result as %  % som_cplane(vis_patch('hexa'),[6 5],'none'), %  % _but_ in this case the axis are not rescaled and the non-regular %  % shape of hexagons can be seen.%%  som_cplane(vis_patch('hexagon'), som_unit_coords([6 5],'hexa'), 'none');%  % produces a truly regular hexa lattice %% SEE ALSO %%  vis_unit_coord   The default 'hexa' and 'rect' coordinates in visualizations%  som_unit_coords  Locations of units on the SOM grid.% Copyright (c) 1999-2000 by the SOM toolbox programming team.% http://www.cis.hut.fi/projects/somtoolbox/             % Version 2.0beta Johan 041099if ~ischar(lattice)  error('Input argument should be a string')else  switch lattice  case 'rect'    p=[[-.5 -.5]; ...      [-.5 .5];...      [.5 .5];...      [.5 -.5]];  case 'hexagon'    p=[[0 0.5774];...      [0.5 0.2887];...      [0.5 -0.2887];...      [0 -0.5774];...      [-0.5 -0.2887];...      [-0.5 0.2887]];  case 'hexa'    p=[[0 0.6667];...      [0.5 0.3333];...      [0.5 -0.3333];...      [0 -0.6667];...      [-0.5 -0.3333];...      [-0.5 0.3333]];  otherwise    error('Unknown lattice');  endend

⌨️ 快捷键说明

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