|
From: John H. <jd...@gm...> - 2008-07-28 14:45:29
|
On Mon, Jul 28, 2008 at 9:26 AM, Jae-Joon Lee <lee...@gm...> wrote: > Hello, > > I just noticed that,if I use imshow(), part of axes border is not > clearly visible (the image hides the border). > And this seems to be due to the following changes in axes.draw() > method made in r5882. > > --- lib/matplotlib/axes.py (revision 5881) > +++ lib/matplotlib/axes.py (revision 5882) > @@ -1503,8 +1503,6 @@ > artists.extend(self.tables) > if self.legend_ is not None: > artists.append(self.legend_) > - if self.axison and self._frameon: > - artists.append(self.frame) > > dsu = [ (a.zorder, i, a) for i, a in enumerate(artists) > if not a.get_animated() ] > > > Don't we need axes.frame to be drawn? Recovering those two lines > solved my problem. apparently the frame drawing code was in Axes.draw and Paul removed the 2nd instance of it. The first instance (which is the one that remains) draws the frame under the artists, and the 2nd instance (the one you want restored) draws the frame above the artists. I tend to agree that it is the 2nd one we want. Does anyone have a different opinion before I fix this? JDH Apparently someone moved the frame drawing code to be earlier so it would be under the artists. |