I think this change has been there for a while.
For recent versions of matplotlib, the default behavior of annotate is
that, when xycoords=="data", the arrow is drawn only when the
annotated point is inside the axes.
To override this behavior, use annotation_clip keyword parameter.


pylab.annotate('',(-1,3.1),(0,3.1),va='center',ha='center',
               arrowprops=dict(arrowstyle='<->'), annotation_clip=False)

Regards,

-JJ


On Fri, Aug 27, 2010 at 9:21 PM, Stan Schymanski <ssc...@bgc-jena.mpg.de> wrote:
> Dear all,
>
> I don't know which update it was that broke it, but this used to work:
>
> import numpy
> import pylab
> pylab.clf()
> fig = pylab.figure(1,figsize=(8,5))
> ax = fig.add_subplot(111, autoscale_on=False, xlim=(-1,5),
> ylim=(-4,3))
>
> t = numpy.arange(0.0, 5.0, 0.01)
> s = numpy.cos(2*numpy.pi*t)
> line, = ax.plot(t, s, lw=3, color='purple')
> pylab.text(-0.5,3.2,'no data',ha='center')
> pylab.annotate('',(-1,3.1),(0,3.1),va='center',ha='center',arrowprops=dict(arrowstyle='<->'))
> pylab.savefig('blah.png')
>
> This used to plot an arrow under the text 'no data' but above the main plot. 
> Now this arrow does not appear unless at least part of it is within the 
> plotting area. Change one of the '3.1' in the code above to, say, 3.0 and the 
> whole arrow is displayed. Is this a bug or is there a new way of achieving 
> what I want?
>
> Thanks for your help already!
>
> Cheers
> Stan
>
>
> ------------------------------------------------------------------------------
> Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
> Be part of this innovative community and reach millions of netbook users
> worldwide. Take advantage of special opportunities to increase revenue and
> speed time-to-market. Join now, and jumpstart your future.
> http://p.sf.net/sfu/intel-atom-d2d
> _______________________________________________
> Matplotlib-users mailing list
> Matplotlib-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>

------------------------------------------------------------------------------
Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
Be part of this innovative community and reach millions of netbook users 
worldwide. Take advantage of special opportunities to increase revenue and 
speed time-to-market. Join now, and jumpstart your future.
http://p.sf.net/sfu/intel-atom-d2d
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to