From: Joe K. <jki...@wi...> - 2011-05-14 22:22:40
|
Hi, When getting an axis's extents through "axis", the autoscaling state of the axis is turned off, regardless of the state it was in before calling "ax.axis()" E.g. import matplotlib.pyplot as plt fig = plt.figure() ax = fig.add_subplot(111) print ax.get_autoscale_on() limits = ax.axis() print ax.get_autoscale_on() It makes sense that it would be turned off if the axis's limits are manually set, but calling ax.get_xlim() or ax.get_ylim() doesn't change the autoscaling state, so why should getting the extents by calling ax.axis()? This seems like confusing and/or inconsistent behavior to me. Would this be considered a bug? If not, is it worth clarifying in the docstring to axis? Thanks, -Joe |
From: Eric F. <ef...@ha...> - 2011-05-15 03:44:00
|
On 05/14/2011 12:22 PM, Joe Kington wrote: > Hi, > > When getting an axis's extents through "axis", the autoscaling state of > the axis is turned off, regardless of the state it was in before calling > "ax.axis()" > > E.g. > import matplotlib.pyplot as plt > fig = plt.figure() > ax = fig.add_subplot(111) > print ax.get_autoscale_on() > limits = ax.axis() > print ax.get_autoscale_on() > > It makes sense that it would be turned off if the axis's limits are > manually set, but calling ax.get_xlim() or ax.get_ylim() doesn't change > the autoscaling state, so why should getting the extents by calling > ax.axis()? It's a bug. Eric > > This seems like confusing and/or inconsistent behavior to me. Would this > be considered a bug? If not, is it worth clarifying in the docstring to > axis? > > Thanks, > -Joe |
From: Eric F. <ef...@ha...> - 2011-05-15 05:50:11
|
On 05/14/2011 12:22 PM, Joe Kington wrote: > Hi, > > When getting an axis's extents through "axis", the autoscaling state of > the axis is turned off, regardless of the state it was in before calling > "ax.axis()" > > E.g. > import matplotlib.pyplot as plt > fig = plt.figure() > ax = fig.add_subplot(111) > print ax.get_autoscale_on() > limits = ax.axis() > print ax.get_autoscale_on() > > It makes sense that it would be turned off if the axis's limits are > manually set, but calling ax.get_xlim() or ax.get_ylim() doesn't change > the autoscaling state, so why should getting the extents by calling > ax.axis()? It is now fixed in v1.0.x and master on github. Eric > > This seems like confusing and/or inconsistent behavior to me. Would this > be considered a bug? If not, is it worth clarifying in the docstring to > axis? > > Thanks, > -Joe > > > > > ------------------------------------------------------------------------------ > Achieve unprecedented app performance and reliability > What every C/C++ and Fortran developer should know. > Learn how Intel has extended the reach of its next-generation tools > to help boost performance applications - inlcuding clusters. > http://p.sf.net/sfu/intel-dev2devmay > > > > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users |
From: Joe K. <jki...@wi...> - 2011-05-15 13:06:59
|
Thanks! -Joe On Sun, May 15, 2011 at 12:50 AM, Eric Firing <ef...@ha...> wrote: > On 05/14/2011 12:22 PM, Joe Kington wrote: > > Hi, > > > > When getting an axis's extents through "axis", the autoscaling state of > > the axis is turned off, regardless of the state it was in before calling > > "ax.axis()" > > > > E.g. > > import matplotlib.pyplot as plt > > fig = plt.figure() > > ax = fig.add_subplot(111) > > print ax.get_autoscale_on() > > limits = ax.axis() > > print ax.get_autoscale_on() > > > > It makes sense that it would be turned off if the axis's limits are > > manually set, but calling ax.get_xlim() or ax.get_ylim() doesn't change > > the autoscaling state, so why should getting the extents by calling > > ax.axis()? > > It is now fixed in v1.0.x and master on github. > > Eric > > > > This seems like confusing and/or inconsistent behavior to me. Would this > > be considered a bug? If not, is it worth clarifying in the docstring to > > axis? > > > > Thanks, > > -Joe > > > > > > > > > > > ------------------------------------------------------------------------------ > > Achieve unprecedented app performance and reliability > > What every C/C++ and Fortran developer should know. > > Learn how Intel has extended the reach of its next-generation tools > > to help boost performance applications - inlcuding clusters. > > http://p.sf.net/sfu/intel-dev2devmay > > > > > > > > _______________________________________________ > > Matplotlib-users mailing list > > Mat...@li... > > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > > > ------------------------------------------------------------------------------ > Achieve unprecedented app performance and reliability > What every C/C++ and Fortran developer should know. > Learn how Intel has extended the reach of its next-generation tools > to help boost performance applications - inlcuding clusters. > http://p.sf.net/sfu/intel-dev2devmay > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > |