# set_xticklabels changes font when text.usetex is enabled#1516

Closed
opened this Issue Nov 17, 2012 · 1 comment

### 1 participant

commented Nov 17, 2012

If text.usetex is enabled, then setting tick labels using Axes.set_xticklabels causes the font to be changed (as if text.usetex were disabled) for that axis.

import numpy as np
from matplotlib import pyplot as pt, rcParams

rcParams['text.usetex'] = True

x = np.linspace(0,10,101)
y = np.sin(x)

fig = pt.figure(figsize=(3.375, 2.5))

pt.plot(x, y)
pt.xlabel(r'$\alpha$')
pt.savefig('mpl_font_testA.png')

ax.set_xticklabels(np.arange(0,11,2))
pt.savefig('mpl_font_testB.png')


Example output is below.

Before calling ax.set_xticklabels:

After calling ax.set_xticklabels:

commented Nov 17, 2012

After reading through the code for ScalarFormatter, it looks like the solution is to include "$" delimiters around the labels, e.g.: ax.set_xticklabels(["$%d\$"%f for f in np.arange(0,11,2)])

closed this Nov 17, 2012