# HG changeset patch # User David Bateman # Date 1238790221 -7200 # Node ID 136e72b9afa8ce589acf8f7babfd2b8212e5e96b # Parent b7210faa3ed0d9b52d730309c88c46668d1cb836 correct indexing of cdata for scatter diff -r b7210faa3ed0 -r 136e72b9afa8 scripts/ChangeLog --- a/scripts/ChangeLog Thu Mar 19 07:00:23 2009 +0100 +++ b/scripts/ChangeLog Fri Apr 03 22:23:41 2009 +0200 @@ -1,3 +1,7 @@ +2008-04-03 David Bateman + + * plot/__scatter__.m: correct indexing of cdata.x + 2009-04-03 Jaroslav Hajek * optimization/fminunc.m: New function. diff -r b7210faa3ed0 -r 136e72b9afa8 scripts/plot/__scatter__.m --- a/scripts/plot/__scatter__.m Thu Mar 19 07:00:23 2009 +0100 +++ b/scripts/plot/__scatter__.m Fri Apr 03 22:23:41 2009 +0200 @@ -149,7 +149,8 @@ h = __go_patch__ (hg, "xdata", x(i), "ydata", y(i), "zdata", z(i,:), "faces", 1, "vertices", [x(i), y(i), z(i,:)], "facecolor", "none", "edgecolor", "flat", - "cdata", c(i), "marker", marker, "markersize", s(i), + "cdata", reshape(c(i,:),[1,size(c)(2:end)]), + "marker", marker, "markersize", s(i), "linestyle", "none"); if (filled) set(h, "markerfacecolor", "flat"); @@ -215,14 +216,28 @@ endif hlist = get (h, "children"); if (ischar (c1)) - for i = 1 : length (hlist) - set (hlist(i), "vertices", [x1(i), y1(i), y2(i)], "cdata", c1, - "markersize", size1(i)); - endfor + if (isempty (z1)) + for i = 1 : length (hlist) + set (hlist(i), "vertices", [x1(i), y1(i)], "cdata", c1, + "markersize", size1(i)); + endfor + else + for i = 1 : length (hlist) + set (hlist(i), "vertices", [x1(i), y1(i), z1(i)], "cdata", c1, + "markersize", size1(i)); + endfor + endif else - for i = 1 : length (hlist) - set (hlist(i), "vertices", [x1(i), y1(i), y2(i)], "cdata", c1(i,:), - "markersize", size1(i)); - endfor + if (isempty (z1)) + for i = 1 : length (hlist) + set (hlist(i), "vertices", [x1(i), y1(i)], "cdata", + reshape(c1(i,:),[1, size(c1)(2:end)]), "markersize", size1(i)); + endfor + else + for i = 1 : length (hlist) + set (hlist(i), "vertices", [x1(i), y1(i), z1(i)], "cdata", + reshape(c1(i,:),[1, size(c1)(2:end)]), "markersize", size1(i)); + endfor + endif endif endfunction