On Sat, Jul 11, 2009 at 1:15 PM, Eric Firing<efir...@hawaii.edu> wrote: > John Hunter wrote: >> >> On Thu, Jul 9, 2009 at 9:44 AM, Johann Cohen-Tanugi<co...@lpta.in2p3.fr> >> wrote: >>> >>> Hello, how can I center axis tick labels, so that the labels ends up at >>> the center between 2 ticks. >>> >> >> There is no support for this, though you can left or right align a >> label with a single tick:: >> >> for label in ax.xaxis.get_xticklabels(): >> label.set_horizontalalignment('right') >> >> JDH > > Labels for intervals rather than ticks would be nice to have; this is > commonly used for labeling months or years, for example. I don't have time > to work on it now, unfortunately. > > The best way to fake it with present facilities might be to use no labels on > the major ticks, place minor ticks half-way between the majors, set their > lengths to zero, and label them.
Nice idea, just committed this example to svn as examples/pylab_examples/centered_ticklabels.py import datetime import numpy as np import matplotlib import matplotlib.dates as dates import matplotlib.ticker as ticker import matplotlib.pyplot as plt # load some financial data; apple's stock price fh = matplotlib.get_example_data('aapl.npy') r = np.load(fh); fh.close() r = r[-250:] # get the last 250 days fig = plt.figure() ax = fig.add_subplot(111) ax.plot(r.date, r.adj_close) ax.xaxis.set_major_locator(dates.MonthLocator()) ax.xaxis.set_minor_locator(dates.MonthLocator(bymonthday=15)) ax.xaxis.set_major_formatter(ticker.NullFormatter()) ax.xaxis.set_minor_formatter(dates.DateFormatter('%b')) for tick in ax.xaxis.get_minor_ticks(): tick.tick1line.set_markersize(0) tick.tick2line.set_markersize(0) tick.label1.set_horizontalalignment('center') imid = len(r)/2 ax.set_xlabel(str(r.date[imid].year)) plt.show() ------------------------------------------------------------------------------ Enter the BlackBerry Developer Challenge This is your chance to win up to $100,000 in prizes! For a limited time, vendors submitting new applications to BlackBerry App World(TM) will have the opportunity to enter the BlackBerry Developer Challenge. See full prize details at: http://p.sf.net/sfu/Challenge _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users