Re: [Matplotlib-users] depth longitude plot
On Sat, Mar 2, 2013 at 6:35 AM, Sudheer Joseph sudheer.jos...@yahoo.comwrote: Hi Phil, Though iris looked to be promising it needed many other libraries, so I chose the below suggestion. But is there a way to overlay contours on this ? also is it possible to specify the levels? In [23]: plt.pcolormesh?? did not give much help with best regards, Sudheer You can overlay contours on the pcolormesh image by simply using the plt.contour() function after the pcolormesh() call. It allows you to control which levels to contour and you can specify the attributes of those contours like the color or thickness. Note that unlike Matlab, you don't have to call hold on between plots. By default, matplotlib will hold. I hope that helps! Ben Root -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] depth longitude plot
Thank you, I just posted this question in numpy lists thinking that it is possible after regriding the data to new axes. Thanks for the help. 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;sudheer.jos...@yahoo.com Web- http://oppamthadathil.tripod.com *** From: Benjamin Root ben.r...@ou.edu To: Sudheer Joseph sudheer.jos...@yahoo.com Cc: Phil Elson pelson@gmail.com; Matplotlib-users@lists.sourceforge.net matplotlib-users@lists.sourceforge.net Sent: Monday, 4 March 2013 7:53 PM Subject: Re: [Matplotlib-users] depth longitude plot On Sat, Mar 2, 2013 at 6:35 AM, Sudheer Joseph sudheer.jos...@yahoo.com wrote: Hi Phil, Though iris looked to be promising it needed many other libraries, so I chose the below suggestion. But is there a way to overlay contours on this ? also is it possible to specify the levels? In [23]: plt.pcolormesh?? did not give much help with best regards, Sudheer You can overlay contours on the pcolormesh image by simply using the plt.contour() function after the pcolormesh() call. It allows you to control which levels to contour and you can specify the attributes of those contours like the color or thickness. Note that unlike Matlab, you don't have to call hold on between plots. By default, matplotlib will hold. I hope that helps! Ben Root-- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] View datetime corresponding to x coordinate of cursor
Several backends will show you the x and y float values that correspond to the current cursor position in a plot() but are there backends that show the _datetime_ corresponding to the x position if the plotted data is a time series (e.g. a pandas.Series object with a DatetimeIndex)? Regards, Will -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] View datetime corresponding to x coordinate of cursor
On Mon, Mar 4, 2013 at 11:23 AM, William Furnass w...@thearete.co.ukwrote: Several backends will show you the x and y float values that correspond to the current cursor position in a plot() but are there backends that show the _datetime_ corresponding to the x position if the plotted data is a time series (e.g. a pandas.Series object with a DatetimeIndex)? Regards, Will Will, You can use the `format_coord` method of the axes objects to do just this. -paul -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] depth longitude plot
Hi Sudheer, You want contourf. http://matplotlib.org/examples/pylab_examples/contour_image.html Cheers, Jody On Mar 4, 2013, at 9:04 AM, Sudheer Joseph sudheer.jos...@yahoo.com wrote: Hi Benamin, I was looking for a plot similar to the attached one named ferret.gif. But from matplot lib I get flat fill and contours which are not aligned to the levels ( named figure_1.png , it looks like matplotlib has just flat surfaces as it used pcolor. with best regards, Sudheer From: Sudheer Joseph sudheer.jos...@yahoo.com To: Benjamin Root ben.r...@ou.edu Cc: Matplotlib-users@lists.sourceforge.net matplotlib-users@lists.sourceforge.net Sent: Monday, 4 March 2013 8:19 PM Subject: Re: [Matplotlib-users] depth longitude plot Thank you, I just posted this question in numpy lists thinking that it is possible after regriding the data to new axes. Thanks for the help. 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;sudheer.jos...@yahoo.com Web- http://oppamthadathil.tripod.com *** From: Benjamin Root ben.r...@ou.edu To: Sudheer Joseph sudheer.jos...@yahoo.com Cc: Phil Elson pelson@gmail.com; Matplotlib-users@lists.sourceforge.net matplotlib-users@lists.sourceforge.net Sent: Monday, 4 March 2013 7:53 PM Subject: Re: [Matplotlib-users] depth longitude plot On Sat, Mar 2, 2013 at 6:35 AM, Sudheer Joseph sudheer.jos...@yahoo.com wrote: Hi Phil, Though iris looked to be promising it needed many other libraries, so I chose the below suggestion. But is there a way to overlay contours on this ? also is it possible to specify the levels? In [23]: plt.pcolormesh?? did not give much help with best regards, Sudheer You can overlay contours on the pcolormesh image by simply using the plt.contour() function after the pcolormesh() call. It allows you to control which levels to contour and you can specify the attributes of those contours like the color or thickness. Note that unlike Matlab, you don't have to call hold on between plots. By default, matplotlib will hold. I hope that helps! Ben Root -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users ferret.giffigure_1.png-- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Jody Klymak http://web.uvic.ca/~jklymak/ -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] depth longitude plot
Thanks to all Matplotlib experts for extending help, With the suggestions I could make the script work and I am close to the target I had in mind, Below script produces as depth longitude contou-filled plot. However I have below concerns, 1) There is a wide gap between label and the contours ie it appears like -- 2.4 . is there a way to reduce this gap? 2) The labels are appearing cluttered at about 100m depth though they culd have spread apart at each level. Is there a way to control their placing to avoid cluttering? 3) Is there a way to make the longitude as in case of maps ie can the x axis labels be 50E 60E ... 90E I am not sure if I am too much ambitious with regard to matplotlib, but I was using ferret where it takes care of the labeling. with best regards, Sudheer from matplotlib import pyplot as plt from netCDF4 import Dataset import numpy as np url='http://www.marine.csiro.au/dods/nph-dods/dods-data/climatology-netcdf/levitus_monthly_temp_98.nc' ds = Dataset(url) temp = ds.variables['TEMP'] lats = ds.variables['lat'] lons = ds.variables['lon'] depths = ds.variables['z'] # filter depths dmin = np.where(depths[:] == 0.)[0][0] dmax = np.where(depths[:] == 1000)[0][0] # filter all but one latitude lat_index = np.where(lats[:] == 0.5)[0][0] lats = lats[lat_index] # filter a range of longitudes lon_lower_index = np.where(lons[:] == 44.5)[0][0] lon_upper_index = np.where(lons[:] == 95.5)[0][0] lons = lons[lon_lower_index:lon_upper_index] depths=depths[dmin:dmax] temp = temp[0,dmin:dmax, lat_index, lon_lower_index:lon_upper_index] #plt.pcolormesh(lons,depths, temp) nx,ny=np.meshgrid(lons,depths) clevs=np.arange(temp.min(),temp.max()+2,temp.std()/5) norm = plt.cm.colors.Normalize(vmax=abs(temp).max(), vmin=-abs(temp).max()) cmap = plt.cm.gist_rainbow_r plt.figure() cs1=plt.contourf(nx,ny,temp, clevs,cmap=plt.cm.get_cmap(cmap, len(clevs)-1)) cs2=plt.contour(nx,ny,temp, cs1.levels,colors = 'k',linewidth=2,hold='on') plt.clabel(cs2,inline=True, fmt='%1.1f', fontsize=18) cb = plt.colorbar(cs1,pad=.02) #(location='right')#,size=5%, pad='2%') plt.gca().invert_yaxis() plt.show() *** 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;sudheer.jos...@yahoo.com Web- http://oppamthadathil.tripod.com *** From: Jody Klymak jkly...@uvic.ca To: Sudheer Joseph sudheer.jos...@yahoo.com Cc: Matplotlib-users@lists.sourceforge.net matplotlib-users@lists.sourceforge.net Sent: Tuesday, 5 March 2013 2:10 AM Subject: Re: [Matplotlib-users] depth longitude plot Hi Sudheer, You want contourf. http://matplotlib.org/examples/pylab_examples/contour_image.html Cheers, Jody On Mar 4, 2013, at 9:04 AM, Sudheer Joseph sudheer.jos...@yahoo.com wrote: Hi Benamin, I was looking for a plot similar to the attached one named ferret.gif. But from matplot lib I get flat fill and contours which are not aligned to the levels ( named figure_1.png , it looks like matplotlib has just flat surfaces as it used pcolor. with best regards, Sudheer From:Sudheer Joseph sudheer.jos...@yahoo.com To: Benjamin Root ben.r...@ou.edu Cc: Matplotlib-users@lists.sourceforge.net matplotlib-users@lists.sourceforge.net Sent: Monday, 4 March 2013 8:19 PM Subject: Re: [Matplotlib-users] depth longitude plot Thank you, I just posted this question in numpy lists thinking that it is possible after regriding the data to new axes. Thanks for the help. 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;sudheer.jos...@yahoo.com Web- http://oppamthadathil.tripod.com *** From: Benjamin Root ben.r...@ou.edu To: Sudheer Joseph sudheer.jos...@yahoo.com Cc: Phil Elson pelson@gmail.com; Matplotlib-users@lists.sourceforge.net matplotlib-users@lists.sourceforge.net Sent: Monday, 4 March 2013 7:53 PM Subject: Re: [Matplotlib-users] depth longitude plot On Sat, Mar 2, 2013 at 6:35 AM, Sudheer Joseph sudheer.jos...@yahoo.com wrote: Hi Phil, Though iris looked to be promising it needed many other libraries, so I chose the below suggestion. But is there a way to overlay contours on this ? also