On 2013/06/10 2:08 PM, Sudheer Joseph wrote: > > Thank you, > So there is no way to get J F M A etc with out reducing font size? We > often need to make presentation in front of senior people who insist for > bigger fonts. > With best regards, > Sudheer
One way is to subclass DateFormatter, e.g., class MonthLetter(DateFormatter): def __init__(self): DateFormatter.__init__(self, "%b") def __call__(*args): s = DateFormatter.__call__(*args) return s[:1] class MonthLetterYear(DateFormatter): def __init__(self): DateFormatter.__init__(self, "%b\n%Y") def __call__(*args): s = DateFormatter.__call__(*args) return = s[:1] + s[3:] ... majorFmt = MonthLetterYear() minorFmt = MonthLetter() Not tested, but something like that should work. Eric > > > ------------------------------------------------------------------------ > *From: * Paul Hobson <pmhob...@gmail.com>; > *To: * Sudheer Joseph <sudheer.jos...@yahoo.com>; > *Cc: * matplotlib-users@lists.sourceforge.net > <matplotlib-users@lists.sourceforge.net>; > *Subject: * Re: [Matplotlib-users] time axis format > *Sent: * Mon, Jun 10, 2013 8:08:18 PM > > In that case, I would use ax.tick_params(...) to make the font smaller. > > > On Sat, Jun 8, 2013 at 7:36 AM, Sudheer Joseph <sudheer.jos...@yahoo.com > <javascript:return>> wrote: > > Dear Paul, > The issue I am facing is like in the attached plot > where the month naming get cluttered. > with best regards, > Sudheer > *************************************************************** > Sudheer Joseph > Indian National Centre for Ocean Information Services > Ministry of Earth Sciences, Govt. of India > POST BOX NO: 21, IDA Jeedeemetla P.O. > Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 > Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), > Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) > E-mail:sjo.in...@gmail.com > <javascript:return>;sudheer.jos...@yahoo.com <javascript:return> > Web- http://oppamthadathil.tripod.com > *************************************************************** > > > ------------------------------------------------------------------------ > *From:* Sudheer Joseph <sudheer.jos...@yahoo.com > <javascript:return>> > *To:* Paul Hobson <pmhob...@gmail.com <javascript:return>> > *Cc:* "matplotlib-users@lists.sourceforge.net > <javascript:return>" <matplotlib-users@lists.sourceforge.net > <javascript:return>> > *Sent:* Saturday, 8 June 2013 7:46 PM > > *Subject:* Re: [Matplotlib-users] time axis format > > Thank you Paul for the helping hand, > However I was looking for > slightly different solution like in the attached plots. I used > ferret to do this based on the length of the time axis it chose > the mode of labelling. for example in case of 2 year plot it > made month labeling as j f m etc and in case of 1 year as there > is enough space on x axis it made jan feb etc with single label > of year. > > In the attached python plot (ATser_RAMA_HYCOM_U_8n90e.png) every > tick point is lablled for year, which I wanted to avoid and get > plots similar to the first types thought it is not done > automatically but at least manually. > > > *************************************************************** > Sudheer Joseph > Indian National Centre for Ocean Information Services > Ministry of Earth Sciences, Govt. of India > POST BOX NO: 21, IDA Jeedeemetla P.O. > Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 > Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), > Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) > E-mail:sjo.in...@gmail.com > <javascript:return>;sudheer.jos...@yahoo.com <javascript:return> > Web- http://oppamthadathil.tripod.com > *************************************************************** > > > ------------------------------------------------------------------------ > *From:* Paul Hobson <pmhob...@gmail.com <javascript:return>> > *To:* Sudheer Joseph <sudheer.jos...@yahoo.com > <javascript:return>> > *Cc:* "matplotlib-users@lists.sourceforge.net > <javascript:return>" <matplotlib-users@lists.sourceforge.net > <javascript:return>> > *Sent:* Friday, 7 June 2013 8:50 PM > *Subject:* Re: [Matplotlib-users] time axis format > > > > > On Thu, Jun 6, 2013 at 11:39 PM, Sudheer Joseph > <sudheer.jos...@yahoo.com <javascript:return>> wrote: > > Dear Experts, > I have been experimenting with the > plot_dates option of matplotlib to plot time series data > and have below questions > > I have used > loc = mdates.AutoDateLocator() > ax.xaxis.set_major_locator(loc) > ax.xaxis.set_major_formatter(mpl.dates.DateFormatter('%b\n > %Y')) > > > and got the tick labels in attached plot > > However I feel the repeatd year labeling is not needed > here and it is required once in a year only , Also if I > need to plot long time seris insted of "MAR" "APR" I > wanted to get them reduced to "M" "A" etc so that the > lavel congestion can be avoided. > > > I notice that below options are available, but was > wondering how commbinatins of these locateors are used > ie mark every month and every year once each. > > > Is there a way to achive the above or does it need > further development? > > fmt = mdates.DateFormatter('%Y-%m-%d') > loc = > mdates.WeekdayLocator(byweekday=mdates.MONDAY,interval=4) > locator = mdates.YearLocator() > > > If I were trying to do this, I'd cobble something together > using by the minor and major formatters. > e.g.,... > import matplotlib.dates as mdates > import matplotlib.pyplot as plt > > fig, ax = plt.subplots() > > majorLocs = mdates.MonthLocator(bymonth[1,7]) > majorFmt = mdates.DateFormatter('%b\n%Y') > > minorLocs = mdates.MonthLocator(bymonth[1,7]) > minorFmt = mdates.DateFormatter('%b') > > ax.xaxis.set_major_locator(majorLocs) > ax.xaxis.set_major_formatter(majorFmt) > > ax.xaxis.set_minor_locator(minorLocs) > ax.xaxis.set_minor_formatter(minorFmt) > > > > > > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > > > > _______________________________________________ > Matplotlib-users mailing list > Matplotlib-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users