m_contour.m

来自「A mapping package for Matlab:这是一款功能十分强大的」· M 代码 · 共 55 行

M
55
字号
function [cs,h]=m_contour(long,lat,data,varargin);%  M_CONTOUR Draws contour lines on a map%    M_CONTOUR(LONG,LAT,DATA,...) draw contours on a map. Behavior%    is the same as for CONTOUR except that LONG and LAT vectors or%    matrices must be specified.%%    [CS,H]=M_CONTOUR(...) returns a contour matrix C and a vector%    H of handles to LINE or PATCH objects for use by CLABEL.%%    See also CONTOUR% Rich Pawlowicz (rich@ocgy.ubc.ca) 17/Jan/1998%% This software is provided "as is" without warranty of any kind. But% it's mine, so you can't sell it.% 9/Dec/98 - made sure bad things don't happen if all your lat/long%            points are out of the plot region.% 6/Nov/00 - eliminate returned stuff if ';' neglected (thx to D Byrne)global MAP_PROJECTION% Have to have initialized a map firstif isempty(MAP_PROJECTION),  disp('No Map Projection initialized - call M_PROJ first!');  return;end;if min(size(long))==1 & min(size(lat))==1, [long,lat]=meshgrid(long,lat);end;[X,Y]=m_ll2xy(long,lat,'clip','on');i=isnan(X);      % For these we set the *data* to NaN...data(i)=NaN;                 % And then recompute positions without clipping. THis                 % is necessary otherwise contouring fails (X/Y with NaN                 % is a no-no. if any(i(:)), [X,Y]=m_ll2xy(long,lat,'clip','off'); end;  if any(~i(:)), [cs,h]=contour(X,Y,data,varargin{:}); set(h,'tag','m_contour');else  cs=[];h=[];end;if nargout==0, clear cs hend;

⌨️ 快捷键说明

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