Antoine De Pauw wrote:
> Sir,
>
> I'm sorry, as english is not my mothertongue and it is sometimes difficult to 
> be understandable.
>
> All is in the script I gave to you initially, except the point drawing code 
> which would be useless as it is proven not to work (I dont know the method to 
> do it).
>
> What I have is a map, and a set of pixels I have to put on it with geographic 
> coordinates.
>
> I cannot find the right method to put colour pixels on the map, that's the 
> problem.
>
> I have that map in miller projection, and three arrays containing 
> respectively latitude, longitude and satellite measured value.
>
> What I need to obtain is something approximately like this: 
> http://www.oma.be/BIRA-IASB/Molecules/SO2archive/info/background/so2sc200703_00_lr.gif
>  but with the basemap toolkit.
>
> So, my question is: how could I do to plot a coloured pixel at coordinates 
> lat:lon on that map? If I have just the method to project a geographic 
> coordinate on the map and put a coloured pixel at the right place, all is 
> done and I just have to loop my arrays... Also, I would have to implement 
> some antialiasing on the map.
>   
Antoine:

Are the pixels arranged on a regular grid - or are they randomly 
distributed?  If they are on a grid, it's easy (using pcolor or imshow). 

If you could send me your data I may be able to get you started.

(I'm cc'ing the matplotlib list so others can join in the discussion).


-Jeff
> If this is not possible to do it in a simple and explainable way, please tell 
> me and I'll continue using matlab or searching for the bit of code which will 
> save me
>
> Anyway, I have to thank you for your interest to help me..
>
> Many thanks,
>
> Antoine De Pauw
>
>   
>> Antoine De Pauw wrote:
>>     
>>> Hi, and thanks for the answer
>>>
>>> In fact, what I do is reading a binary file to obtain 3 arrays 
>>> (Lat,Lon,Val) describing geographic points which are associated by index 
>>> (like point 1 is Lat[0]:Lon[0] with value Val[0])
>>>
>>> What I need to do is to plot some points on the map (miller projection for 
>>> most) based on latitude and longitude, to obtain a colour map (points are 
>>> unordered, it is from IASI satellite computations)
>>>
>>> I'm able to create a map, draw simple things on it, etc but the problem I 
>>> have is any method I try for plotting points is failing, either pcolor, 
>>> pcolormesh, imshow, etc.
>>>
>>> When I found your post on that mailing list, I figured out that you might 
>>> have the experience and skills to easily explain to me how to manipulate 
>>> these points and plot them on the map, as there's like no help on the web 
>>> except standard examples...
>>>
>>> Please tell me if this is possible for you to give me some tips, or if it 
>>> takes too much of your time just advice me some lectures
>>>
>>> Best regards,
>>>
>>> De Pauw Antoine
>>>   
>>>       
>> Antoine:  It would really help to have a script demonstrating your 
>> problem.  It sounds to me like you want to plot markers representing a 
>> set of points - for that you should use the scatter method.  pcolor, 
>> pcolormesh and friends are for plotting gridded data.
>>
>> -Jeff
>>     
>>>   
>>>       
>>>> De Pauw Antoine wrote:
>>>>     
>>>>         
>>>>> Dear sir,
>>>>>
>>>>>  
>>>>>
>>>>> I’m currently trying to improve our plotting tools here at the 
>>>>> “Quantum 
>>>>> Chemistry and Photophysics” section of the Université Libre de 
>>>>> Bruxelles, and I ran, after many time passed at searching for a 
>>>>> solution, on an explanation from you here: 
>>>>> http://www.nabble.com/Re:-matplotlib-basemap-question-tt17759370.html
>>>>>
>>>>>  
>>>>>
>>>>> It seems that you could help me find a solution, as I cannot plot any 
>>>>> points on maps.
>>>>>
>>>>>  
>>>>>
>>>>> Could you please tell me what I could do to plot data in a simple way, 
>>>>> assuming I have 3 unordered arrays containing respectively latitude, 
>>>>> longitude and values to plot?
>>>>>
>>>>>  
>>>>>
>>>>> Some tips would be very nice from you as any method I have tried so far 
>>>>> give me some errors…
>>>>>
>>>>>  
>>>>>
>>>>> Thank you very much in advance,
>>>>>
>>>>>  
>>>>>
>>>>> Best regards,
>>>>>
>>>>>  
>>>>>
>>>>> PS: I give you the code I’m using currently, missing the plotting 
>>>>> part
>>>>>
>>>>>  
>>>>>
>>>>> from mpl_toolkits.basemap import Basemap
>>>>>
>>>>> from numpy import *
>>>>>
>>>>> from scipy.io.numpyio import fread
>>>>>
>>>>> import matplotlib.pyplot as plt
>>>>>
>>>>> import numpy as np
>>>>>
>>>>> import os
>>>>>
>>>>> import sys
>>>>>
>>>>> import array
>>>>>
>>>>>  
>>>>>
>>>>> fileName="c:/20080821.b56"
>>>>>
>>>>>  
>>>>>
>>>>> print('preparing map')   
>>>>>
>>>>> map = 
>>>>> Basemap(projection='mill',lat_0=0,lon_0=0,resolution='i',area_thresh=30000.)
>>>>>
>>>>> map.drawcoastlines(0.5,antialiased=1)
>>>>>
>>>>> map.drawmapboundary()
>>>>>
>>>>> #map.drawmeridians(np.arange(-180,180,60),linewidth=0.5, 
>>>>> labels=np.arange(-180,180,60), labelstyle="+/-")
>>>>>
>>>>> #map.drawparallels(np.arange(-90,90,30), linewidth=0.5, 
>>>>> labels=np.arange(-180,180,30), labelstyle="+/-")
>>>>>
>>>>> print('reading binary data')
>>>>>
>>>>> nbreligne=long(os.stat(fileName)[6])/(8*int(fileName[-2:]))
>>>>>
>>>>> Lat=zeros(nbreligne)
>>>>>
>>>>> Lon=zeros(nbreligne)
>>>>>
>>>>> Val=zeros(nbreligne)
>>>>>
>>>>> rawfile=fromfile(open(fileName,'rb'),'d',-1)       
>>>>>
>>>>> Lat=rawfile[0:nbreligne]
>>>>>
>>>>> Lon=rawfile[nbreligne:nbreligne*2]
>>>>>
>>>>> Val=rawfile[nbreligne*21:nbreligne*22]
>>>>>
>>>>> print('shifting latitudes and projecting to map')
>>>>>
>>>>> i=0
>>>>>
>>>>> while i < nbreligne:
>>>>>
>>>>>     if(Lon[i]>180):
>>>>>
>>>>>         print(Lon[i])
>>>>>
>>>>>         Lon[i]-=360
>>>>>
>>>>>         print(Lon[i])
>>>>>
>>>>>     i+=1
>>>>>
>>>>> print('plotting data')
>>>>>
>>>>>  
>>>>>
>>>>> #plotting code comes here
>>>>>       
>>>>>           
>>>> Antoine:  If you send me a self-contained script that produces the 
>>>> problem you see, I can help you debug it.  As it stands now, I have very 
>>>> little to work with - it could be your plotting commands, or it could be 
>>>> your data.
>>>>
>>>> -Jeff
>>>>     
>>>>         
>>>>>  
>>>>>
>>>>> print('saving map')       
>>>>>
>>>>> plt.savefig("testfig.png",dpi=600)
>>>>>
>>>>> print('done')
>>>>>
>>>>>  
>>>>>
>>>>> *Antoine De Pauw*
>>>>> Collaborateur de recherches, Informatique - Research collaborator, IT
>>>>> Laboratoire de chimie quantique et photophysique - Quantum chemistry and 
>>>>> photophysics laboratory
>>>>> *Université Libre de Bruxelles - ULB <http://ww.ulb.ac.be/>*
>>>>>
>>>>>  
>>>>>
>>>>>       
>>>>>           
>>>> -- 
>>>> Jeffrey S. Whitaker         Phone  : (303)497-6313
>>>> Meteorologist               FAX    : (303)497-6449
>>>> NOAA/OAR/PSD  R/PSD1        Email  : [EMAIL PROTECTED]
>>>> 325 Broadway                Office : Skaggs Research Cntr 1D-113
>>>> Boulder, CO, USA 80303-3328 Web    : http://tinyurl.com/5telg
>>>>
>>>>
>>>>     
>>>>         
>>>   
>>>       
>> -- 
>> Jeffrey S. Whitaker         Phone : (303)497-6313
>> NOAA/OAR/CDC  R/PSD1        FAX   : (303)497-6449
>> 325 Broadway                Boulder, CO, USA 80305-3328
>>
>>
>>
>>     
>
>
>   


-- 
Jeffrey S. Whitaker         Phone : (303)497-6313
NOAA/OAR/CDC  R/PSD1        FAX   : (303)497-6449
325 Broadway                Boulder, CO, USA 80305-3328


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to