On Fri, Jun 11, 2010 at 9:38 AM, Jack Liddle <j.lid...@fz-juelich.de> wrote: > Hello all. > > I'm trying to apply a transformation (Affine2D) to a text artist. For > some reason the artist doesn't show up in the plot. I have a simple > code here which demonstrates the problem. Any ideas what I'm doing > wrong? > > Thanks > > Jack Liddle > > from numpy import * > import matplotlib.pyplot as plt > from matplotlib.text import Text > > fig = plt.figure() > > from matplotlib.transforms import Affine2D,Transform > ax1 = fig.add_subplot(111) > > #Something to plot > xs = linspace(0,1,100) > ys = xs**2 > ax1.plot(xs,ys) > > #The transformation > mytrans = Affine2D() > print mytrans > print isinstance(mytrans,Transform) > > > t = Text(0.5,0.5,"Problems?",transform=mytrans) > ax1.add_artist(t) > plt.show()
The transformation must take input in your coordinate system and output in display coordinate systems. The default Affine2D transformation is identity, so you are transforming 0.5, 0.5 userland coordinates to 0.5, 0.5 display. This display coordinate falls outside the Axes window and so is being clipped. If you turn clipping off, you will see part of your text in the lower left t = Text(0.5, 0.5,"Problems?",transform=mytrans, clip_on=False) If you want to see it in the middle of your plot, you could do something like t = Text(200, 200,"Problems?",transform=mytrans, clip_on=False) Note this transformation applies only to the x,y location of the text, and will not transform the glyphs of the text. See http://matplotlib.sourceforge.net/users/transforms_tutorial.html for more details on transformations. JDH ------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users