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

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

?? colorbarf.m

?? 交互小波分析及其一致性分析
?? M
字號:
function hcb=colorbarf(cout,H,loc)
% COLORBARF Display color bar for a filled contour plot.
% =========================================================================
% colorbarf  Version 1.5 19-Feb-2001
%
% Usage: 
%   colorbarf(cout,H,[loc])
%
%   Example: [cout,H,cf]=contourf(peaks);
%            colorbarf(cout,H);
%
% Description:
%   This Matlab function uses the output arguments from the contourf function
%   to produce a colorbar that sets the tick marks equal to the contour levels
%   in the figure. The area of the colorbar between the tick marks is filled
%   with the same color used by the contourf function. The location may be
%   specified as either 'vert' or 'horiz'.
%
% Input:
%   cout - output argument of contourf containing an matrix describing the
%          contours
%   H    - graphics handles for the contours in the figure
%   loc  - location of the colorbar specified 'vert' for vertical (Default) and
%          'horiz' for horizontal. If not specified, default is set.
%
% Output:
%   hcb  - graphics handle for the colorbar axis
%
% Author:
%   Blair Greenan
%   Bedford Institute of Oceanography
%   December 22, 1998
%   Matlab 5.2.1
%   greenanb@mar.dfo-mpo.gc.ca
% =========================================================================
%

%   This function has been derived from the Matlab colorbar function
%   Author: Clay M. Thompson 10-9-92
%   Copyright (c) 1984-98 by The MathWorks, Inc.
%   $Revision: 5.27 $  $Date: 1997/12/18 17:04:01 $
%

% Modifications:
%   Version 1.1 - function now works with the output of the Matlab 
%   contourf function. Colorbarf can now handle situations in which
%   the lowest contour level is not filled if an array, which does not
%   include a value at or below the minimum of the data, is passed to
%   the contourf function. Version 1.0 also did not plot the colorbar
%   appropriately if a colorbar already existed on the figure...this
%   is now fixed.
%   Version 1.2 - ch.UserData changed to ch(i).UserData. This enables 
%   colrbarf to be used on multiple plot figures - Thanks to Peter Brickley, U. of Maine
%   Version 1.3 - changes made to handle NaNs in data - 11-Mar-1999 - Thanks to J. van der Molen 
%   Version 1.4 - removed for loop at line 128 to speed up execution time
%   Version 1.5 - modified line 129 "if (N1 > 1)" to accomodate the MATLAB 6.0 include some NULL
%                 contours that have one point that is simply NaN.

%   If called with COLORBAR(H) or for an existing colorbar, don't change
%   the NextPlot property.
changeNextPlot = 1;

% colorbar must have output parameters from the contourf function
if (nargin < 2)
   error('colorbarf requires a minimum of two input parameters');
end

% default location for colorbar
if nargin<3, loc = 'vert'; end

% if an axes handle is passed for the location
ax = [];
if nargin==3,
    if ishandle(loc)
        ax = loc;
        if ~strcmp(get(ax,'type'),'axes'),
            error('Requires axes handle.');
        end
        units = get(ax,'units'); set(ax,'units','pixels');
        rect = get(ax,'position'); set(ax,'units',units)
        if rect(3) > rect(4), loc = 'horiz'; else loc = 'vert'; end
        changeNextPlot = 0;
    end
end

h = gca;

if (nargin == 2)
   % Search for existing colorbar so that we can plot over it if we find it
   ch = get(findobj(gcf,'type','axes','tag','Colorbar')); ax = [];
   for i=1:length(ch),
      ud = ch(i).UserData; % ch.UserData changed to ch(i).UserData - suggested by P. Brickley
      d = ud.PlotHandle;
      if prod(size(d))==1 & isequal(d,h), 
         ax = findobj(gcf,'type','axes','tag','Colorbar'); 
         pos = ch.Position;
         if pos(3)<pos(4), loc = 'vert'; else loc = 'horiz'; end
         changeNextPlot = 0;
         break; 
      end
   end
elseif ((nargin == 3) & (~ishandle(loc)))
   % Search for existing colorbar so that we can plot over it if we find it
   ch = get(findobj(gcf,'type','axes','tag','Colorbar')); ax = [];
   for i=1:length(ch),
      ud = ch(i).UserData; % ch.UserData changed to ch(i).UserData - suggested by P. Brickley
      d = ud.PlotHandle;
      if prod(size(d))==1 & isequal(d,h), 
         ax = findobj(gcf,'type','axes','tag','Colorbar'); 
         pos = ch.Position;
         if pos(3)<pos(4), loc = 'vert'; else loc = 'horiz'; end
         changeNextPlot = 0;
         break; 
      end
   end
end

origNextPlot = get(gcf,'NextPlot');
if strcmp(origNextPlot,'replacechildren') | strcmp(origNextPlot,'replace'),
    set(gcf,'NextPlot','add')
end

%%%%%%%%%%%%%% Filled Colorbar %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Blair Greenan Dec 16, 1998

% strip out the information about the contours from the output of the contourf
% function
i = 1;
while ~isempty(cout)
   C1(i) = cout(1,1); % contour level
   N1 = cout(2,1); % number of points in contour
   % Version 1.4 removed for loop to speed things up
   cout(:,1:N1+1) = []; % shrink the matrix
   if (N1 > 1) % has to be more than 1 point in contour to be valid ***VERSION 1.5 to accomodate MATLAB6****
      i = i + 1;
   end
end



C2 = unique(C1); % find the unique contour levels and sort
numLevels = length(C2); 

if strcmp(get(H,'type'),'hggroup') %added by Aslak Grinsted to ensure v7 compatibility
    H=get(H,'children');
end

for j = 1:length(H)
   colors(j) = get(H(j),'CData'); % get the color used to fill the patches
   %set(H(j),'CData')
end
colors = unique(colors);  % create a list of unique colors used in fills
minc = min(colors);
maxc = max(colors);
colors(isnan(colors))=[];
if ((length(colors)-numLevels)>1)
   % chop off extra colors that don't have a corresponding contour level
   colors(1:((length(colors)-numLevels)-1))=[]; 
end
% special case where no mimima is enclosed by a contour
if (length(colors) == numLevels)
   colors(length(colors)+1)=NaN;
end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

if loc(1)=='v', % Append vertical scale to right of current plot
    
    if isempty(ax),
        units = get(h,'units'); set(h,'units','normalized')
        pos = get(h,'Position'); 
        [az,el] = view;
        stripe = 0.075; edge = 0.02; 
        if all([az,el]==[0 90]), space = 0.05; else space = .1; end
        set(h,'Position',[pos(1) pos(2) pos(3)*(1-stripe-edge-space) pos(4)])
        rect = [pos(1)+(1-stripe-edge)*pos(3) pos(2) stripe*pos(3) pos(4)];
        ud.origPos = pos;
        
        % Create axes for stripe and
        % create DeleteProxy object (an invisible text object in
        % the target axes) so that the colorbar will be deleted
        % properly.
        ud.DeleteProxy = text('parent',h,'visible','off',...
                              'tag','ColorbarDeleteProxy',...
                              'handlevisibility','off',...
             'deletefcn','eval(''delete(get(gcbo,''''userdata''''))'','''')');
        ax = axes('Position', rect,'Tag','TMW_COLORBAR');
        set(ud.DeleteProxy,'userdata',ax)
        set(h,'units',units)
    else % if colobar axes already exist
        axes(ax);
        ud = get(ax,'userdata');
    end
    
    % Create color stripe by drawing the appropriate number of filled rectangles 
    if any(isnan(colors)) % if the bottom level is not filled
       for j = 1:length(C2)+1
          k = j - 1; % don't fill bottom rectangle on colorbar
          x(1) = 0;
          x(2) = 1;
          x(3) = 1;
          x(4) = 0;
          y(1) = (j-1)*(1/(length(C2)+1));
          y(2) = (j-1)*(1/(length(C2)+1));
          y(3) = j*(1/(length(C2)+1));
          y(4) = j*(1/(length(C2)+1));
          if (k == 0)
             hfill = fill(x,y,colors(length(colors))); % fill with NaN
          else
             hfill = fill(x,y,colors(k));
          end
          hold on
       end
    else %we have filled the bottom contour level
       for j = 1:length(C2)+1
          x(1) = 0;
          x(2) = 1;
          x(3) = 1;
          x(4) = 0;
          y(1) = (j-1)*(1/(length(C2)+1));
          y(2) = (j-1)*(1/(length(C2)+1));
          y(3) = j*(1/(length(C2)+1));
          y(4) = j*(1/(length(C2)+1));
          hfill = fill(x,y,colors(j));
          hold on
       end
    end
    set(ax,'YAxisLocation','right')
    set(ax,'xtick',[])
    ylimits = get(gca,'ylim');
    myYticks = ylimits(1):(ylimits(2)-ylimits(1))/(length(C2)+1):ylimits(2)...
       -((ylimits(2)-ylimits(1))/(length(C2)+1));
    set(gca,'ytick',myYticks);
    
    myStr{1} = ' ';
    for kk = 1:length(C2)
       myStr{kk+1} = num2str(C2(kk));
    end
    myStr{(length(C2)+2)} = ' ';
    set(gca,'YTickLabel',myStr)
    set(gca,'CLim',[minc maxc])

    % set up axes deletefcn
    set(ax,'tag','Colorbar','deletefcn','colorbar(''delete'')')
    
elseif loc(1)=='h', % Append horizontal scale to top of current plot
    
    if isempty(ax),
        units = get(h,'units'); set(h,'units','normalized')
        pos = get(h,'Position');
        stripe = 0.075; space = 0.1;
        set(h,'Position',...
            [pos(1) pos(2)+(stripe+space)*pos(4) pos(3) (1-stripe-space)*pos(4)])
        rect = [pos(1) pos(2) pos(3) stripe*pos(4)];
        ud.origPos = pos;

        % Create axes for stripe and
        % create DeleteProxy object (an invisible text object in
        % the target axes) so that the colorbar will be deleted
        % properly.
        ud.DeleteProxy = text('parent',h,'visible','off',...
                              'tag','ColorbarDeleteProxy',...
                              'handlevisibility','off',...
             'deletefcn','eval(''delete(get(gcbo,''''userdata''''))'','''')');
        ax = axes('Position', rect,'Tag','TMW_COLORBAR');
        set(ud.DeleteProxy,'userdata',ax)
        set(h,'units',units)
    else % if colobar axes already exist
        axes(ax);
        ud = get(ax,'userdata');
    end
    
    % Create color stripe by drawing the appropriate number of filled rectangles 
    if any(isnan(colors)) % if the bottom level is not filled
       for j = 1:length(C2)+1
          k = j - 1; % don't fill bottom rectangle on colorbar
          y(1) = 0;
          y(2) = 1;
          y(3) = 1;
          y(4) = 0;
          x(1) = (j-1)*(1/(length(C2)+1));
          x(2) = (j-1)*(1/(length(C2)+1));
          x(3) = j*(1/(length(C2)+1));
          x(4) = j*(1/(length(C2)+1));
          if (k == 0)
             hfill = fill(x,y,colors(length(colors))); % fill with NaN
          else
             hfill = fill(x,y,colors(k));
          end
          hold on
       end
    else %we have filled the bottom contour level
       for j = 1:length(C2)+1
          y(1) = 0;
          y(2) = 1;
          y(3) = 1;
          y(4) = 0;
          x(1) = (j-1)*(1/(length(C2)+1));
          x(2) = (j-1)*(1/(length(C2)+1));
          x(3) = j*(1/(length(C2)+1));
          x(4) = j*(1/(length(C2)+1));
          hfill = fill(x,y,colors(j));
          hold on
       end
    end
    set(ax,'ytick',[])
    xlimits = get(gca,'xlim');
    myXticks = xlimits(1):(xlimits(2)-xlimits(1))/(length(C2)+1):xlimits(2)...
       -((xlimits(2)-xlimits(1))/(length(C2)+1));
    set(gca,'xtick',myXticks);
    
    myStr{1} = ' ';
    for kk = 1:length(C2)
       myStr{kk+1} = num2str(C2(kk));
    end
    myStr{(length(C2)+2)} = ' ';
    set(gca,'XTickLabel',myStr)
    set(gca,'CLim',[minc maxc])

    % set up axes deletefcn
    set(ax,'tag','Colorbar','deletefcn','colorbar(''delete'')')
    
else
  error('COLORBAR expects a handle, ''vert'', or ''horiz'' as input.')
end

if ~isfield(ud,'DeleteProxy'), ud.DeleteProxy = []; end
if ~isfield(ud,'origPos'), ud.origPos = []; end
ud.PlotHandle = h;
set(ax,'userdata',ud)
set(gcf,'CurrentAxes',h)
set(gcf,'NextPlot',origNextPlot)

if nargout>0, hcb = ax; end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91丨porny丨最新| 亚洲免费视频成人| 亚洲视频你懂的| 麻豆成人在线观看| 欧美性极品少妇| 亚洲国产精品av| 久久精品国产99久久6| 91麻豆国产精品久久| 国产农村妇女毛片精品久久麻豆| 亚洲h在线观看| 欧洲在线/亚洲| 亚洲欧美欧美一区二区三区| 黄页视频在线91| 欧美一区二区三区免费大片 | 蜜桃一区二区三区在线观看| 一本久久综合亚洲鲁鲁五月天 | 欧美电影免费观看高清完整版在线| 亚洲人快播电影网| 成人性生交大合| 日韩一区二区免费高清| 亚洲电影中文字幕在线观看| 色欧美乱欧美15图片| 最新高清无码专区| av一本久道久久综合久久鬼色| 国产亚洲欧美色| 丰满少妇在线播放bd日韩电影| 欧美精品一区男女天堂| 国产自产2019最新不卡| 26uuu亚洲| 国产乱色国产精品免费视频| 欧美va亚洲va香蕉在线| 国产一区二区在线看| 久久青草欧美一区二区三区| 精品无码三级在线观看视频| 日韩欧美国产wwwww| 免费高清在线一区| 久久久精品免费网站| 成人av集中营| 亚洲欧美日韩国产另类专区| 欧美午夜一区二区三区免费大片| 午夜影视日本亚洲欧洲精品| 欧美精品1区2区| 精品一区二区久久久| 国产日韩精品一区| 91捆绑美女网站| 亚洲一区二区av在线| 91精品国产综合久久香蕉的特点| 美女视频一区二区三区| 337p粉嫩大胆噜噜噜噜噜91av| 粉嫩aⅴ一区二区三区四区五区| 国产精品女同一区二区三区| 91视频免费观看| 视频一区欧美精品| 国产亚洲成aⅴ人片在线观看 | www.成人网.com| 亚洲一区二区三区视频在线 | 欧美日韩在线电影| 日本美女一区二区三区| 久久免费的精品国产v∧| 91麻豆免费在线观看| 日韩高清在线观看| 国产亚洲一二三区| 欧美日韩中文字幕一区| 激情图区综合网| 成人免费在线观看入口| 欧美一级精品在线| 成人h动漫精品一区二区| 日日噜噜夜夜狠狠视频欧美人| 欧美精品一区二区三区视频| 99re这里只有精品首页| 亚洲超碰97人人做人人爱| 久久久久久免费网| 欧美日韩中文字幕一区| 成人综合婷婷国产精品久久| 亚洲国产中文字幕在线视频综合 | 日韩欧美色电影| 91在线视频官网| 国产一区二区影院| 三级一区在线视频先锋| 国产精品久久毛片av大全日韩| 91精品国产入口| 色偷偷成人一区二区三区91| 国产成人午夜精品影院观看视频 | 亚洲男人天堂一区| 精品欧美久久久| 欧美日韩一卡二卡三卡| 成人99免费视频| 激情综合色综合久久| 亚洲成国产人片在线观看| 最新热久久免费视频| 26uuu亚洲综合色欧美| 666欧美在线视频| 91啪亚洲精品| 成人高清视频免费观看| 韩日欧美一区二区三区| 日韩激情中文字幕| 一区二区不卡在线视频 午夜欧美不卡在| 精品区一区二区| 欧美一级高清片| 欧美精品一卡二卡| 欧美三级电影网站| 欧美午夜影院一区| 欧洲一区二区三区在线| 色偷偷久久人人79超碰人人澡| 高清不卡一区二区在线| 国产福利一区二区三区视频在线| 九九国产精品视频| 精品一区二区免费看| 激情图片小说一区| 国产精品亚洲专一区二区三区 | 国产精品丝袜黑色高跟| 久久久青草青青国产亚洲免观| 欧美成人高清电影在线| 精品欧美一区二区久久| 久久久午夜精品理论片中文字幕| 久久久久国产精品人| 国产目拍亚洲精品99久久精品| 国产农村妇女毛片精品久久麻豆| 国产日韩av一区二区| 国产精品久久久久久久久晋中 | 久久国产精品色婷婷| 狠狠色综合播放一区二区| 国产在线视视频有精品| 国产福利一区二区三区在线视频| 国产91丝袜在线18| 91在线视频观看| 欧美日韩国产在线观看| 欧美一级生活片| 26uuu久久综合| 亚洲欧洲性图库| 亚洲1区2区3区4区| 国产真实乱子伦精品视频| www.亚洲人| 91.xcao| 精品成人一区二区三区| 欧美激情中文字幕| 一个色妞综合视频在线观看| 日日夜夜一区二区| 国产盗摄一区二区三区| 色哟哟日韩精品| 日韩午夜小视频| 中文字幕日韩一区| 青椒成人免费视频| 成人国产精品免费| 欧美一区三区二区| 国产欧美日韩在线| 午夜激情综合网| 国产91综合网| 91.xcao| 亚洲三级在线观看| 久久精品国产99| 色哟哟亚洲精品| 久久精品无码一区二区三区| 亚洲乱码精品一二三四区日韩在线| 日本三级亚洲精品| 色一情一乱一乱一91av| 日韩欧美一卡二卡| 一区二区三区四区不卡视频 | 亚洲国产精品一区二区久久| 久久精品国产99国产| 91丨九色丨国产丨porny| 精品剧情v国产在线观看在线| 成人欧美一区二区三区在线播放| 免费在线看一区| 欧美在线免费观看亚洲| 国产精品三级av| 久久机这里只有精品| 在线观看国产91| 国产精品少妇自拍| 久久99国产精品麻豆| 欧美喷水一区二区| 日韩理论片网站| 国产成人精品三级麻豆| 日韩手机在线导航| 香蕉久久一区二区不卡无毒影院| fc2成人免费人成在线观看播放| 精品国产乱码久久| 日韩中文欧美在线| 欧美色综合网站| 亚洲老司机在线| 99国产精品国产精品久久| 久久精品日韩一区二区三区| 蜜臀va亚洲va欧美va天堂 | 99在线视频精品| 精品欧美一区二区在线观看| 日韩国产欧美三级| 91麻豆精品91久久久久久清纯| 亚洲私人影院在线观看| 成人高清免费在线播放| 中文字幕不卡三区| 成人高清免费观看| 国产性天天综合网| 国产精品18久久久久| 日韩免费在线观看| 蜜臀精品一区二区三区在线观看| 欧美一区二区日韩一区二区| 五月天激情综合网| 欧美成人精品二区三区99精品| 美女免费视频一区| 精品日本一线二线三线不卡|