Re: [Matplotlib-users] depth longitude plot

2013-03-04 Thread Benjamin Root
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

2013-03-04 Thread Sudheer Joseph
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

2013-03-04 Thread William Furnass
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

2013-03-04 Thread Paul Hobson
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

2013-03-04 Thread Jody Klymak

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

2013-03-04 Thread Sudheer Joseph
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