Mercurial > hg > octave-nkf
diff scripts/plot/__contour__.m @ 7462:dfcaf7ed48e3
Allow linewidth to be specified for contours
author | David Bateman |
---|---|
date | Fri, 08 Feb 2008 12:30:39 +0100 |
parents | 11c5f1ee553e |
children | 73d6b71788c0 |
line wrap: on
line diff
--- a/scripts/plot/__contour__.m +++ b/scripts/plot/__contour__.m @@ -28,7 +28,7 @@ for i = 3 : nargin arg = varargin {i}; if ((ischar (arg) || iscell (arg))) - [linespec, valid] = __pltopt__ ("quiver", arg, false); + [linespec, valid] = __pltopt__ ("contour", arg, false); if (isempty (linespec.color)) linespec.color = "flat"; endif @@ -40,15 +40,24 @@ endif endfor + opts = {}; + i = 3; + while (i < length (varargin)) + if (ischar (varargin {i})) + opts{end+1} = varargin{i}; + varargin(i) = []; + opts{end+1} = varargin{i}; + varargin(i) = []; + else + i++; + endif + endwhile + if (ischar (z)) if (strcmp (z, "none")) z = NaN; elseif (strcmp (z, "base")) - if (nargin < 3) - z = varargin{1}; - else - z = varargin{3}; - endif + z = varargin{3}; z = 2 * (min (z(:)) - max (z(:))); elseif (! strcmp (z, "level")) error ("unrecognized z argument"); @@ -73,15 +82,15 @@ if (isnan (z)) h = [h; patch(ax, p(1,:), p(2,:), "facecolor", "none", "edgecolor", linespec.color, "linestyle", - linespec.linestyle, "cdata", clev)]; + linespec.linestyle, "cdata", clev, opts{:})]; elseif (!ischar(z)) h = [h; patch(ax, p(1,:), p(2,:), z * ones (1, columns (p)), "facecolor", "none", "edgecolor", linespec.color, - "linestyle", linespec.linestyle, "cdata", clev)]; + "linestyle", linespec.linestyle, "cdata", clev, opts{:})]; else h = [h; patch(ax, p(1,:), p(2,:), clev * ones (1, columns (p)), "facecolor", "none", "edgecolor", linespec.color, - "linestyle", linespec.linestyle, "cdata", clev)]; + "linestyle", linespec.linestyle, "cdata", clev, opts{:})]; endif i1 += clen+1; endwhile