Hi, I'm using matplotlib embedded in my wxpython application and needed to give users a quick way to relimit a figure, for example after removing a line from a plot. Therefore I added a button to the toolbar. Do you think it would make sense to include this in matplotlib by default? Appended you find modifications of backend_bases.py and backends/backend_wx.py as well as a draft for a symbol.
Greetings, Dieter
Index: lib/matplotlib/backend_bases.py =================================================================== --- lib/matplotlib/backend_bases.py (Revision 8721) +++ lib/matplotlib/backend_bases.py (Arbeitskopie) @@ -2388,6 +2388,15 @@ self.set_history_buttons() self._update_view() + def relim(self, *args): + 'Fit all objects into view' + self.update() + for a in self.canvas.figure.get_axes(): + a.relim() + a.autoscale() + a.autoscale_view() + self.draw() + def _init_toolbar(self): """ This is where you actually build the GUI widgets (called by Index: lib/matplotlib/backends/backend_wx.py =================================================================== --- lib/matplotlib/backends/backend_wx.py (Revision 8721) +++ lib/matplotlib/backends/backend_wx.py (Arbeitskopie) @@ -1755,6 +1755,7 @@ self._parent = self.canvas.GetParent() _NTB2_HOME =wx.NewId() + _NTB2_RELIM =wx.NewId() self._NTB2_BACK =wx.NewId() self._NTB2_FORWARD =wx.NewId() self._NTB2_PAN =wx.NewId() @@ -1766,6 +1767,8 @@ self.AddSimpleTool(_NTB2_HOME, _load_bitmap('home.png'), 'Home', 'Reset original view') + self.AddSimpleTool(_NTB2_RELIM, _load_bitmap('relim.png'), + 'Relimit', 'Fit all elements into plot') self.AddSimpleTool(self._NTB2_BACK, _load_bitmap('back.png'), 'Back', 'Back navigation view') self.AddSimpleTool(self._NTB2_FORWARD, _load_bitmap('forward.png'), @@ -1785,6 +1788,7 @@ 'Save', 'Save plot contents to file') bind(self, wx.EVT_TOOL, self.home, id=_NTB2_HOME) + bind(self, wx.EVT_TOOL, self.relim, id=_NTB2_RELIM) bind(self, wx.EVT_TOOL, self.forward, id=self._NTB2_FORWARD) bind(self, wx.EVT_TOOL, self.back, id=self._NTB2_BACK) bind(self, wx.EVT_TOOL, self.zoom, id=self._NTB2_ZOOM)
<<attachment: relim.xpm>>
<<attachment: relim.svg>>
<<attachment: relim.ppm>>
<<attachment: relim.png>>
------------------------------------------------------------------------------ Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel