Mercurial > hg > octave-nkf
diff src/graphics.cc @ 14324:5a2b012b10c7
allow zooming for logscale plots
* graphics.cc (axes::properties::zoom_about_point): Allow zooming for
logscale axes.
* graphics.h.in (class neg_log_scaler): New class.
(log_scalar::do_neg_scale): Delete
(log_scalar::scale): Don't attempt to handle negative data.
(axes::properties::get_scale): New function.
(axes::properties::update_xscale, axes::properties::update_yscale,
axes::properties::update_zscale): Use it.
(axes::properties::update_xlim): Call update_xscale.
(axes::properties::update_ylim): Call update_yscale.
(axes::properties::update_zlim): Call update_zscale.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 03 Feb 2012 19:54:26 -0500 |
parents | ec99c8c185be |
children | 63f1bdf08339 |
line wrap: on
line diff
--- a/src/graphics.cc +++ b/src/graphics.cc @@ -6632,11 +6632,8 @@ double max_neg_y = -octave_Inf; get_children_limits (miny, maxy, min_pos_y, max_neg_y, kids, 'y'); - if (! xscale_is ("log")) - xlims = do_zoom (x, factor, xlims, xscale_is ("log")); - - if (! yscale_is ("log")) - ylims = do_zoom (y, factor, ylims, yscale_is ("log")); + xlims = do_zoom (x, factor, xlims, xscale_is ("log")); + ylims = do_zoom (y, factor, ylims, yscale_is ("log")); zoom (xlims, ylims, push_to_zoom_stack); }