From: John H. <jdh...@ac...> - 2005-02-22 18:58:42
|
>>>>> "Darren" == Darren Dale <dd...@co...> writes: Darren> Hi, I am reporting a minor bug. I noticed that if I change Darren> the ticklabel size to 10, draw a semilogy plot, and save Darren> an eps file, that the yticklabels in the eps are badly Darren> formatted. The exponent runs into the base. Darren> from matplotlib import * rc('tick',labelsize=10) from Darren> pylab import * Darren> semilogy([1,2,3],[1e-5,1,1e5]) savefig('temp.eps') The relevant section of code is matplotlib.text.Text._get_layout_super wb,hb = renderer.get_text_width_height(base, self._fontproperties, False) we,he = renderer.get_text_width_height(exponent, fpexp, False) w = wb+we xb, yb = self._transform.xy_tup((self._x, self._y)) xe = xb+wb ye = yb+0.5*hb h = ye+he-yb w,h is width and height and e,b is exponent and base -- eg, xb is the x location of the base and wb is the width of the base. Try adding a pad to xe, eg xe = xb+1.05*wb and see if you can find something that works well for a variety of reasonable font sizes. You might want to make the pad dependent on the fontsize... JDH |