python - Formatting string ticklabels matplotlib -
i have set of ticklabels strings on x axis, , want able -> modify -> set them. example have plot looks this:
import matplotlib.pyplot plt fig, ax = plt.subplots() ax.plot(range(1,6), range(5)) plt.xticks(range(1,6), ['a','b','c','d','e'] and want change labels on x axis ['(a)','(b)','(c)','(d)','(e)']
what simplest/best way this? i've tried things like:
labels = ['(%s)' % l l in ax.xaxis.get_ticklabels()] ax.xaxis.set_ticklabels(labels) but ax.xaxis.get_ticklabels() returns matplotlib text objects opposed list of strings , i'm not sure how go modifying them. tried using matplotlib.ticker.funcformatter hold of numeric positions not labels themselves. appreciated.
one more layer unpeel:
import matplotlib.pyplot plt fig, ax = plt.subplots() ax.plot(range(1,6), range(5)) plt.xticks(range(1,6), ['a','b','c','d','e']) labels = ['(%s)' % l.get_text() l in ax.xaxis.get_ticklabels()] ax.xaxis.set_ticklabels(labels) your code l.get_text() in list comp there l.
Comments
Post a Comment