changeset 13757:1e81e2e30af3

default limits for logscale plots * graphics.cc (default_lim): New optional argument, logscale. Return [0.1, 1.0] if logscale is true. (axes::properties::get_axis_limits): Return default limits if min/max values are at their initial values.
author John W. Eaton <jwe@octave.org>
date Wed, 26 Oct 2011 17:36:54 -0400
parents 6dfebfa334cb
children 9586dc4e838b
files src/graphics.cc
diffstat 1 files changed, 16 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/graphics.cc	Wed Oct 26 14:19:54 2011 -0400
+++ b/src/graphics.cc	Wed Oct 26 17:36:54 2011 -0400
@@ -220,10 +220,18 @@
 }
 
 static Matrix
-default_lim (void)
+default_lim (bool logscale = false)
 {
   Matrix m (1, 2, 0);
-  m(1) = 1;
+
+  if (logscale)
+    {
+      m(0) = 0.1;
+      m(1) = 1.0;
+    }
+  else
+    m(1) = 1;
+
   return m;
 }
 
@@ -5554,7 +5562,12 @@
   double min_val = xmin;
   double max_val = xmax;
 
-  if (! (xisinf (min_val) || xisinf (max_val)))
+  if (xisinf (min_val) && min_val > 0 && xisinf (max_val) && max_val < 0)
+    {
+      retval = default_lim (logscale);
+      return retval;
+    }
+  else if (! (xisinf (min_val) || xisinf (max_val)))
     {
       if (logscale)
         {