亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? som_barplane.m

?? it is matlab code , som(slef organizing map) tool for matlab
?? M
字號:
function h = som_barplane(varargin)%SOM_BARPLANE Visualize the map prototype vectors as bar charts%% h = som_barplane(lattice, msize, data, [color], [scaling], [gap], [pos])% h = som_barplane(topol, data, [color], [scaling], [gap], [pos])%%  som_barplane('hexa',[5 5], rand(25,4), jet(4)) %  som_barplane(sM, sM.codebook,'none')% %  Input and output argumetns ([]'s are optional):%   lattice   (string) grid 'hexa' or 'rect'%   msize     (vector) size 1x2, defines the map grid size msize, M=prod(msize)%             (matrix) size Mx2, gives explicit coordinates for each node:%                      in this case the first argument does not matter.%   topol     (struct) map or topology struct%   data      (matrix) size Mxd, each row defines heights of the bars%   [color]   (matrix) size dx3, of RGB triples. The rows define colors %                      for each bar in a node. Default is hsv(d). A ColorSpec or%             (string) A ColorSpec or 'none' gives each bar the same color.       %   [scaling] (string) 'none', 'unitwise' or 'varwise'. The scaling%                      mode for the values. Default is 'varwise'.%   [gap]     (scalar) Defines the gap between bars, limits: 0 <= gap <= 1 %                      where 0=no gap, 1=bars are thin lines. Default is 0.25.%   [pos]     (vector) 1x2 vector defines the position of origin.%                      Default is [1 1].%%   h         (scalar) the object handle to the PATCH object% % Axis are set as in SOM_CPLANE.%% For more help, try 'type som_barplane' or check out online documentation.% See also SOM_CPLANE, SOM_PLOTPLANE, SOM_PIEPLANE.%%%%%%%%%%%%% DETAILED DESCRIPTION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% som_barplane%% PURPOSE% % Visualizes the map prototype vectors as bar charts.%% SYNTAX%%  h = som_barplane(topol, data)%  h = som_barplane(lattice, msize, data)%  h = som_barplane(..., color)%  h = som_barplane(..., color, scaling)%  h = som_barplane(..., color, scaling, gap)%  h = som_barplane(..., color, scaling, gap, pos)%% DESCRIPTION%% Visualizes the map prototype vectors as bar charts.%% REQUIRED INPUT ARGUMENTS% % lattice     The basic shape of the map units %    (string) 'hexa' or 'rect' positions the bar charts according to%             hexagonal or rectangular map lattice%% msize       The size of the map grid     %    (vector) [n1 n2] vector defines the map size (height: n1 units widht: n2%             units, total: M=n1xn2 units). The units will be placed to their%             topological locations in order to form a uniform hexagonal or %             rectangular grid.%    (matrix) Mx2 matrix defines arbitary coordinates for the N units. In %             this case the argument 'lattice' has no effect%% topol    Topology of the map grid%%   (struct) map or topology struct from which the topology is taken%% data        The data to use when constructing the bar charts.%             Typically, the map codebook or some of its components.%    (matrix) Mxd matrix. A row defines heights of the bars.%% OPTIONAL INPUT ARGUMENTS%% Note: if unspecified or given an empty value ('' or []), default% values are used for optional input arguments.%% color       The color of the bars in each pie%    (ColorSpec) or (string) 'none' gives the same color for each slice.%    (matrix) dx3 matrix assigns an RGB color determined by the dth row of%             the matrix to the dth bar (variable) in each bar plot. %             Default value is hsv(d).%% scaling     How to scale the values  %    (string) 'none', 'unitwise' or 'varwise'. This determines the %             scaling of codebook values when drawing the bars.  %%             'none' don't scale at all. The bars are not limited%              to remain inside he units' area: That is, if value of%              some variable exceeds [-.625,.625] for 'rect' (and%              in "worst case" [-.5,-.5] for 'hexa') the bars may%              overlap other units. %             %              Base line (zero value line) %              - is in the middle of the unit if data (codebook) contains both %                negative and positive values (or is completely zero).%              - is in the top the unit if data (codebook) contains only%                non-positive values (everything <=0).%              - is in the bottom the unit if data (codebook) contains only%                non-negative values (everything >=0).% %             'varwise' scales values so that each variable is scaled separately %              so that when it gets its overall maximum value, the%              corresponding bar gets maximum range and for minimum value%              it gets the minimum range. Baseline: see scaling 'none' %              This is the default.%             %             'unitwise' scales values in each unit individually so that the %              bars for variables having minimum and maximum values have minimum %              and maximum range inside each unit, respectively. %              In this case the zero value line may move depending on the values. % % gap         The gap between bars        %    (scalar) 0: no gap: bars are glued together %             ... default value is 0.25       %             1: maximum gap: bars are thin lines % % pos         Position of origin          %    (vector) size 1x2. This is meant for drawing the plane in arbitrary %             location in a figure. Note the operation: if this argument is%             given, the axis limits setting part in the routine is skipped and %             the limits setting will be left to be done by MATLAB's defaults. %             Default is [1 1].%% OUTPUT ARGUMENTS%%  h (scalar) handle to the created patch object%% OBJECT TAGS     %%  One object handle is returned: field Tag is set to 'planeBar'       %% FEATURES%%  - The colors are fixed: changing colormap in the figure (see help%    colormap) will not change the coloring of the bars.%% EXAMPLES%% %%% Create the data and make a map %    % data=rand(100,5); map=som_make(data);% % %%% Create a 'jet' colormap that has as many rows as the data has variables%    % colors=jet(5);% % %%% Draw bars%    % som_barplane(map.topol.lattice, map.topol.msize, map.codebook, colors);% or som_barplane(map.topol, map.codebook, colors);% or som_barplane(map, map.codebook, colors);% % %%% Draw the bars so that the gap between the bars is bigger and all %     bars are black%% som_barplane(map, map.codebook, 'k', '', 0.6);% % SEE ALSO%% som_cplane     Visualize a 2D component plane, u-matrix or color plane% som_plotplane  Visualize the map prototype vectors as line graphs% som_pieplane   Visualize the map prototype vectors as pie charts% Copyright (c) 1999-2000 by the SOM toolbox programming team.% http://www.cis.hut.fi/projects/somtoolbox/             % Version 2.0beta Juha P 110599, Johan 140799, juuso 151199 140300 070600%%% Check & Init arguments %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%[nargin, lattice, msize, data, color, scaling, gap, pos] = vis_planeGetArgs(varargin{:});error(nargchk(3, 7, nargin))   % check that no. of input args is correct% Check posif nargin < 7 | isempty(pos)  pos=NaN;                            % default value for pos (no translation) elseif ~vis_valuetype(pos,{'1x2'})  error('Position of origin has to be given as an 1x2 vector');end% Check gapif nargin < 6 | isempty(gap),    gap=0.25;                           % default value for gapelseif ~vis_valuetype(gap, {'1x1'}),  error('Gap value must be scalar.');elseif ~(gap >= 0 & gap<=1)   error('Gap value must be in interval [0,1].')end% Check scalingif nargin < 5 | isempty(scaling),  scaling='varwise';elseif ~vis_valuetype(scaling,{'string'}) | ...       ~any(strcmp(scaling,{'none','unitwise','varwise'})),  error('scaling sholud be ''none'', ''unitwise'' or ''varwise''.');end  % Check msizeif ~vis_valuetype(msize,{'1x2','nx2'}),  error('msize has to be 1x2 grid size vector or a Nx2 coordinate matrix.');end% Check dataif ~isnumeric(data),  error('Data matrix has to be numeric.');elseif length(size((data)))>2  error('Data matrix has too many dimensions!');else  d=size(data,2);  N=size(data,1);ends=.8;                                 % patch size scaling factorswitch scaling,case 'none'    % no scaling: don't scale  % Check data max and min values  positive=any(data(:)>0); negative=any(data(:)<0);  if (positive & negative) | (~positive & ~negative),    % Data contains both negative and positive values (or is    % completely zero) baseline to centre    zeroline='zero';  elseif positive & ~negative    % Data contains only positive values: baseline to bottom    zeroline='bottom';  elseif ~positive & negative    % Data contains only negative values: baseline to top    zeroline='top';  endcase 'unitwise'  % scale the variables so that the bar for variable with the maximum   % value in the unit spans to the upper edge of the unit  % and the bar for the variable with minimum value spans to the lower edge,  % respectively.  zeroline='moving'; case 'varwise'  % Check data max and min values  positive=any(data(:)>0); negative=any(data(:)<0);  if (positive & negative) | (~positive & ~negative),    % Data contains both negative and positive values (or is    % completely zero) baseline to    % centre, scale data so that it doesn't overflow    data=data./repmat(max(abs([max(data); min(data)])),N,1)*.5;    zeroline='zero';  elseif positive & ~negative    % Data contains only positive values: baseline to    % bottom, scale data so that it doesn't overflow    data=data./repmat(max(abs([max(data); min(data)])),N,1)*.5;    zeroline='bottom';  elseif ~positive & negative    % Data contains only negative values: baseline to    % top, scale data so that it doesn't overflow    zeroline='top';    data=data./repmat(max(abs([max(data); min(data)])),N,1)*.5;  endotherwise  error('Unknown scaling mode?');endfor i=1:N,                            % calculate patch coordinates for  v=data(i,:);  [nx,ny]=vis_barpatch(v,gap,zeroline); % bars  barx(:,(1+(i-1)*d):(i*d))=s*nx;  bary(:,(1+(i-1)*d):(i*d))=s*ny;        endl=size(barx,1);if size(msize,1) == 1,  xdim=msize(2);  ydim=msize(1);  if xdim*ydim~=N     error('Data matrix has wrong size.');  else    y=reshape(repmat(1:ydim,d,1),1,d*ydim); y=repmat(repmat(y,l,1),1,xdim);    x=reshape(repmat(1:xdim,l*ydim*d,1),l,N*d);    endelse  x=reshape(repmat(msize(:,1),1,l*d)',l,d*N);  y=reshape(repmat(msize(:,2),1,l*d)',l,d*N);  if N ~= size(msize,1),    error('Data matrix has wrong size.');  else    lattice='rect';     if isnan(pos),      pos=[0 0];    end  endend% Check latticeif ~ischar(lattice)  error('Invalid lattice.');endswitch lattice                      case {'hexa','rect'}  pos=pos-1;otherwise  error([ 'Lattice' lattice ' not implemented!']);end  % Check color% C_FLAG is for color 'none'if nargin < 4 | isempty(color)  color=hsv(d);                       % default n hsv colorsendif ~vis_valuetype(color, {[d 3],'nx3rgb'},'all') & ...  ~vis_valuetype(color,{'colorstyle','1x3rgb'})error('The color matrix has wrong size or has invalid values.');elseif ischar(color) & strcmp(color,'none')  C_FLAG=1;  color='w';else  C_FLAG=0;end%% Action %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Making lattice.% Command view([0 90]) shows the map in 2D properly orientedswitch lattice  case 'hexa'   t=find(rem(y(1,:),2));                        % move even rows by .5   x(:,t)=x(:,t)-.5;    x=x+barx+.5;    y=y+bary;     case 'rect'    x=x+barx;    y=y+bary;         end% NB: The coordinates in hexa are not uniform in order to get even  % y-coordinates for the nodes. This is handled by setting _axis scaling_ % so that the hexa-nodes look like uniform hexagonals. See % vis_PlaneAxisPropertiesif ~isnan(pos)  x=x+pos(1);y=y+pos(2);               % move upper left corner end                                    % to pos%% Set axes properties  ax=newplot;                            % get current axisvis_PlaneAxisProperties(ax,lattice, msize, pos);                         %% Rearrange dx3 color matrixif ~isstr(color) & size(color,1)~=1,  color=reshape(repmat(color,N,1),[1 N*d 3]);end%% Draw the plane! if isnumeric(color),   % explicit color settings by RGB-triplets won't work with   % patch in 'painters' mode, unless there only a single triplet  si = size(color);   if length(si)~=2 | any(si==[1 3]), set(gcf,'renderer','zbuffer'); endendh_=patch(x,y,color);if C_FLAG  set(h_,'FaceColor','none');endset(h_,'Tag','planeBar');              % tag the object %%% Build output %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%if nargout>0, h=h_; end                % Set h only if                                        % there really is output%%% Subfunctions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%function [xcoord,ycoord]=vis_barpatch(y,gap,zeroline)x = length(y);d = gap/(2*(x-1)+2);step= -.5:1/x:.5;miny=min(y);maxy=max(y);switch(zeroline) case 'moving'  if miny < 0     if maxy > 0      zl = .5 - (abs(miny)/(maxy-miny));    %reverse mode      y= .5 - ((y-miny*ones(1,x))./(maxy-miny));    else      zl = -.5;      y=-.5+abs(y./miny);    end  else    zl = .5;    %reverse mode    y=.5-y./maxy;  end case 'moveNotScale'  if miny < 0    if maxy > 0      zl = 0.5+miny;      y = zl - y;     else      zl=-.5;      y=-.5+abs(y);    end  else    zl=.5;    y =.5-y;  end case 'zero'  zl=0; y=zl-y;  case 'top'  zl=-.5; y=zl-2*y;  case 'bottom'  zl=.5; y=zl-2*y; endfor i=1:x  xcoord(:,i) = [d+step(i);d+step(i);step(i+1)-d;step(i+1)-d;d+step(i)];  ycoord(:,i) = [zl;y(i);y(i);zl;zl];end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
jizz一区二区| 欧美日韩亚洲综合| 香蕉成人啪国产精品视频综合网| 日韩女同互慰一区二区| 97久久超碰国产精品电影| 免费观看30秒视频久久| 亚洲精品ww久久久久久p站| 日韩欧美国产成人一区二区| 91国产成人在线| 国产成人午夜精品影院观看视频| 午夜激情久久久| 亚洲人成精品久久久久| 久久久国产午夜精品| 在线播放/欧美激情| 欧美在线不卡视频| www.亚洲色图.com| 国产大陆a不卡| 伦理电影国产精品| 无吗不卡中文字幕| 亚洲国产人成综合网站| 亚洲精品美腿丝袜| 综合久久给合久久狠狠狠97色| 欧美zozo另类异族| 欧美精品一卡二卡| 欧美日韩一区高清| 欧美在线免费观看亚洲| 91久久一区二区| 91免费看视频| 99久久精品99国产精品| 成人视屏免费看| 国产成人免费视| 极品少妇一区二区| 国产一区二区免费在线| 极品少妇xxxx偷拍精品少妇| 另类小说图片综合网| 九九九精品视频| 日本va欧美va欧美va精品| 日本亚洲三级在线| 日本在线观看不卡视频| 日韩不卡一区二区三区| 午夜精品久久久久久久久久| 午夜国产不卡在线观看视频| 亚洲成人精品一区二区| 亚洲r级在线视频| 五月综合激情网| 麻豆国产精品777777在线| 蜜臀av性久久久久蜜臀aⅴ四虎| 免费成人美女在线观看.| 久久精品久久99精品久久| 国内欧美视频一区二区| 国产黄色精品网站| 成人毛片视频在线观看| 99视频一区二区| 欧美性色综合网| 欧美电影影音先锋| 精品裸体舞一区二区三区| 久久久久久一二三区| 欧美激情中文不卡| 亚洲美女偷拍久久| 天天射综合影视| 精品中文字幕一区二区小辣椒| 国产精品99久久久久久似苏梦涵| 成熟亚洲日本毛茸茸凸凹| 色综合久久六月婷婷中文字幕| 欧美影视一区在线| 精品久久久影院| 国产精品视频第一区| 亚洲精品免费播放| 久久精品国内一区二区三区| 成人va在线观看| 欧美日韩国产综合视频在线观看| 日韩精品在线网站| 国产精品国产a| 亚洲 欧美综合在线网络| 精品在线你懂的| 99久久精品国产一区| 欧美一区二区三区影视| 中文字幕乱码日本亚洲一区二区| 夜夜精品浪潮av一区二区三区| 奇米影视一区二区三区小说| 成人美女视频在线看| 欧美美女喷水视频| 日本一区二区高清| 日韩电影免费在线看| 成a人片亚洲日本久久| 欧美人体做爰大胆视频| 国产欧美一区二区三区鸳鸯浴| 亚洲综合无码一区二区| 国产一区二区三区免费在线观看| 色综合天天综合| 精品国产91洋老外米糕| 一区二区三区产品免费精品久久75| 美女脱光内衣内裤视频久久网站| 成人黄色大片在线观看| 欧美一区欧美二区| 亚洲男人的天堂av| 国产精品中文字幕一区二区三区| 欧洲视频一区二区| 国产欧美日韩视频一区二区| 日韩黄色免费电影| 色一情一乱一乱一91av| 国产日韩精品久久久| 日日摸夜夜添夜夜添精品视频| 不卡电影免费在线播放一区| 欧美大片在线观看一区二区| 一区二区三区精品视频| 成人国产精品免费| 2023国产精品视频| 日本午夜精品一区二区三区电影| 色综合欧美在线| 国产亚洲一区二区三区| 日韩电影免费在线观看网站| 欧美性videosxxxxx| 中文字幕亚洲在| 国产成人免费网站| 欧美精品一区男女天堂| 日韩高清一区二区| 欧美性欧美巨大黑白大战| 《视频一区视频二区| 国产sm精品调教视频网站| 精品国产乱码久久久久久图片| 日韩高清不卡一区二区| 欧美色综合久久| 亚洲综合一区二区| 91久久精品国产91性色tv| 日韩一区日韩二区| 成人激情免费网站| 欧美激情一区二区三区四区| 国内精品国产成人国产三级粉色 | 三级一区在线视频先锋| 91极品美女在线| 亚洲男女毛片无遮挡| 色噜噜狠狠色综合欧洲selulu| 国产精品久久久久久久久图文区| 国产jizzjizz一区二区| 国产日本欧美一区二区| 成人av资源站| 日韩理论片网站| 色先锋aa成人| 夜夜亚洲天天久久| 欧美精品高清视频| 蜜桃视频一区二区三区在线观看| 日韩一区二区三区免费观看| 久久99蜜桃精品| 久久久久久亚洲综合| 国产v综合v亚洲欧| 中文字幕亚洲成人| 在线中文字幕一区| 天天色综合成人网| 精品99久久久久久| 成人性生交大片| 亚洲丝袜制服诱惑| 欧美日韩亚洲综合在线| 美女www一区二区| 日本一区免费视频| 91丨porny丨中文| 亚洲五码中文字幕| 欧美大片免费久久精品三p | 国产一区二区三区四区五区入口 | 亚洲精品一区二区精华| 成人国产免费视频| 亚洲一区二区三区精品在线| 在线播放欧美女士性生活| 国内一区二区视频| 亚洲情趣在线观看| 欧美精品aⅴ在线视频| 久久se这里有精品| 中文字幕中文字幕一区二区| 欧美优质美女网站| 精品在线播放午夜| 亚洲人妖av一区二区| 777色狠狠一区二区三区| 国产精品综合一区二区三区| 自拍偷拍亚洲激情| 538在线一区二区精品国产| 国产精品一区二区在线观看不卡 | 老司机精品视频线观看86| 国产精品精品国产色婷婷| 精品视频在线免费观看| 国产一区二区福利| 一区二区国产盗摄色噜噜| 精品国产乱码久久久久久久| 国产精品国产三级国产普通话99 | 亚洲天堂网中文字| 欧美性色综合网| 国产高清视频一区| 亚洲在线中文字幕| 久久久精品免费网站| 欧美性感一类影片在线播放| 国产成人av电影在线播放| 亚洲一区影音先锋| 国产日韩三级在线| 欧美喷潮久久久xxxxx| 成人av网站在线| 免费在线观看成人| 亚洲一区二区四区蜜桃| 欧美激情一区二区在线| 日韩女优av电影| 欧美中文字幕一二三区视频| 成人激情视频网站|