diff scripts/plot/__patch__.m @ 6925:1401a79af68c

[project @ 2007-09-26 18:58:52 by dbateman]
author dbateman
date Wed, 26 Sep 2007 18:58:53 +0000
parents 76e3d985ae56
children 93c65f2a5668
line wrap: on
line diff
--- a/scripts/plot/__patch__.m
+++ b/scripts/plot/__patch__.m
@@ -51,13 +51,20 @@
     endif
   endif
 
-  if (have_x && nargin > iarg && isnumeric (varargin{iarg}))
-    c = varargin{iarg};
-    have_c = true;
-    iarg++;
+  if (have_x && nargin > iarg)
+    if (isnumeric (varargin{iarg}))
+      c = varargin{iarg};
+      have_c = true;
+      iarg++;
 
-    if (ndims (c) == 3 && size (c, 2) == 1)
-      c = permute (c, [1, 3, 2]);
+      if (ndims (c) == 3 && size (c, 2) == 1)
+	c = permute (c, [1, 3, 2]);
+      endif
+    elseif (ischar (varargin{iarg}) && rem (nargin - iarg, 2) != 0)
+      ## Assume that any additional argument over an even number is color string
+      c = tolower (varargin{iarg});
+      have_c = true;
+      iarg++;
     endif
   endif
 
@@ -96,7 +103,9 @@
 	  c2 = c;
 	endif
 
-	if (numel (c2) == 1)
+	if (ischar (c2))
+	  set (h, "facecolor", c2);
+	elseif (numel (c2) == 1)
 	  if (isnan (c))
 	    set (h, "facecolor", [1, 1, 1]);
 	    set (h, "cdata", c2);