# HG changeset patch # User Ben Abbott # Date 1276211816 14400 # Node ID 1215ab6f349151632836c8d5a44cb6c9c3808b53 # Parent e363b09a30c0d68035e05f0a52a6fcd07fa2271a Honor Matlab color settings for scatter(). diff -r e363b09a30c0 -r 1215ab6f3491 scripts/ChangeLog --- a/scripts/ChangeLog Thu Jun 10 19:10:37 2010 -0400 +++ b/scripts/ChangeLog Thu Jun 10 19:16:56 2010 -0400 @@ -1,5 +1,7 @@ 2010-06-10 Ben Abbott + * plot/private/__scatter__.m, plot/scatter.m: Honor Matlab color + settings. * general/prepad.m: Fix typo 'dimm' -> 'dim'. 2010-06-10 Jaroslav Hajek diff -r e363b09a30c0 -r 1215ab6f3491 scripts/plot/private/__scatter__.m --- a/scripts/plot/private/__scatter__.m Thu Jun 10 19:10:37 2010 -0400 +++ b/scripts/plot/private/__scatter__.m Thu Jun 10 19:16:56 2010 -0400 @@ -54,22 +54,24 @@ if (istart <= nargin) s = varargin{istart}; - if (isempty (s)) + if (isempty (s) || ischar (s)) s = 6; + else + istart++; endif else s = 6; endif - if (istart < nargin && firstnonnumeric > istart + 1) - c = varargin{istart + 1}; + if (istart <= nargin && firstnonnumeric > istart) + c = varargin{istart}; if (isvector (c)) if (columns (c) != 3) c = c(:); endif endif - elseif (firstnonnumeric == istart + 1 && ischar (varargin{istart + 1})) - c = varargin{istart + 1}; + elseif (firstnonnumeric == istart && ischar (varargin{istart})) + c = varargin{istart}; firstnonnumeric++; else c = []; @@ -143,7 +145,7 @@ "faces", 1, "vertices", [x(i), y(i), z(i,:)], "facecolor", "none", "edgecolor", "none", "marker", marker, "markersize", s(i), - "markeredgecolor", none, "markerfacecolor", c, + "markeredgecolor", c, "markerfacecolor", c, "linestyle", "none"); else h = __go_patch__ (hg, "xdata", x(i), "ydata", y(i), "zdata", z(i,:), diff -r e363b09a30c0 -r 1215ab6f3491 scripts/plot/scatter.m --- a/scripts/plot/scatter.m Thu Jun 10 19:10:37 2010 -0400 +++ b/scripts/plot/scatter.m Thu Jun 10 19:16:56 2010 -0400 @@ -80,4 +80,16 @@ %!demo %! x = randn (100, 1); %! y = randn (100, 1); +%! scatter (x, y, "r") + +%!demo +%! x = randn (100, 1); +%! y = randn (100, 1); %! scatter (x, y, [], sqrt(x.^2 + y.^2)); + +%!demo +%! x = rand (10, 1); +%! y = rand (10, 1); +%! s = 10 - 10 * log (x.^2+y.^2); +%! h = scatter (x, y, s, s, "s", "filled"); +