Question about default value for 'emit' in set_[xy]lim()

Hi,

The normal rectangular Axes class and the derived PolarAxes class both
have set_xlim() and set_ylim() functions, but the rectangular Axes class
has a default value of False for the 'emit' argument, whereas the
PolarAxes version has True. I had a figure containing three Axes
instances, arranged as one 'main' plot and two subsidiary plots. I
wanted the subsidiary plots to have their x- and y-limits slaved to
changes in the main plot's, but with the current default value of
'emit', I wasn't getting callbacks when I used the navigation toolbar to
pan/zoom around the main plot. Would there be any disadvantage to
changing the default value to True, as in the patch below? (I haven't
looked at all callers of set_xlim() so I could well be missing a good
reason why this isn't currently done.)

Thanks,

Ben.

- - - - 8< - - - -

--- ORIG/axes.py 2007-07-17 15:24:10.367402000 +0100
+++ NEW/axes.py 2007-07-17 15:48:28.708471000 +0100
@@ -1449,7 +1449,7 @@
         return self.viewLim.intervalx().get_bounds()

- def set_xlim(self, xmin=None, xmax=None, emit=False, **kwargs):
+ def set_xlim(self, xmin=None, xmax=None, emit=True, **kwargs):
         """
         set_xlim(self, *args, **kwargs):

@@ -1573,7 +1573,7 @@
         'Get the y axis range [ymin, ymax]'
         return self.viewLim.intervaly().get_bounds()

- def set_ylim(self, ymin=None, ymax=None, emit=False, **kwargs):
+ def set_ylim(self, ymin=None, ymax=None, emit=True, **kwargs):
         """
         set_ylim(self, *args, **kwargs):

This inconsistency was never intentional, and is fixed in svn.

JDH

···

On 7/17/07, Ben North <ben@...1679...> wrote:

Hi,

The normal rectangular Axes class and the derived PolarAxes class both
have set_xlim() and set_ylim() functions, but the rectangular Axes class
has a default value of False for the 'emit' argument, whereas the
PolarAxes version has True.
looked at all callers of set_xlim() so I could well be missing a good
reason why this isn't currently done.)