KURT PETERS wrote:
> Jeff,
>  Do you think it's possible the names or CITIESX020 variable are not 
> being brought in in the right order?
>  I modified my code to use scatter, and, although it looks like the 
> dots are in the right place, the names aren't matching?
> see code:
> =========
> import pylab as p
> import numpy
> from matplotlib.toolkits.basemap import Basemap as Basemap
> from matplotlib.colors import rgb2hex
> from matplotlib.patches import Polygon
>
> # Lambert Conformal map of lower 48 states.
> # create new figure
> #http://nationalatlas.gov/metadata/citiesx020.faq.html
> #http://nationalatlas.gov/atlasftp.html?openChapters=chpref#chpref
> fig=p.figure()
> m1 = Basemap(llcrnrlon=-119,llcrnrlat=22,urcrnrlon=-64,urcrnrlat=49,\
>            projection='lcc',lat_1=33,lat_2=45,lon_0=-95,resolution='c')
> shp_info = 
> m1.readshapefile(r'C:\Python25\Lib\basemap-0.9.9.1\examples\citiesx020','states',drawbounds=True)
>  
>
>
> ax=p.gca()
>
> #define SHPT_POINT        1    Points
> #define SHPT_ARC          3    Arcs (Polylines, possible in parts)
> #define SHPT_POLYGON      5    Polygons (possible in parts)
> #define SHPT_MULTIPOINT   8    MultiPoint (related points)
> print shp_info
> print m1.states_info[0].keys()
> seqnum={}
> criteriatodisplay=[]
> names={}
> ii=0
> for shapedict in m1.states_info:
>    if int(shapedict['POP_2000'])>100000:
> #'STATE_FIPS', 'NAME', 'POP_2000', 'FEATURE', 'COUNTY', 'STATE', 
> 'FIPS', 'CITIESX020', 'FIPS55', 'DISPLAY', 'POP_RANGE']
>        print 'STATE_FIPS = %s, NAME = %s, POP_2000=%s, FEATURE = %s, 
> COUNTY=%s, STATE=%s, FIPS=%s, CITIESX020 = %s, FIPS55=%s, DISPLAY=%s, 
> POP_RANGE=%s' %\
>        (str(shapedict['STATE_FIPS']), str(shapedict['NAME']), 
> str(shapedict['POP_2000']),  str(shapedict['FEATURE']), 
> str(shapedict['COUNTY']), str(shapedict['STATE']), 
> str(shapedict['FIPS']), str(shapedict['CITIESX020']), 
> str(shapedict['FIPS55']), str(shapedict['DISPLAY']), 
> str(shapedict['POP_RANGE']))
>        # have an index of the names
>        seqnum[shapedict['CITIESX020']]=shapedict['NAME']
>        criteriatodisplay.append(shapedict['CITIESX020'])
>
>        ii+=1
>
> print ii
> #x, y = zip(*m1.states)
> #print m1.states[1]
> #print x[1]
> #print y[1]
> #ii=0
> x=[]
> y=[]
> ii=0
> for nshape,seg in enumerate(m1.states):
>    if nshape in criteriatodisplay:
>        x.append(seg[0])
>        y.append(seg[1])
>        p.text(seg[0],seg[1],seqnum[nshape],fontsize=12)
>        ii+=1
>
>        #print 'Shape num %s, coords=%s' % (seqnum[nshape], seg)
>        #   ax.annotate(seqnum[nshape],seg)
> m1.scatter(x,y,2,'b',marker='o',faceted=False,zorder=10)
>
> #ax.annotate(s='s',xy=(int(x),int(y)))
> #p.figtext(x,y,'o',weight='heavy', size = 16)
> m1.drawcoastlines()
> m1.fillcontinents()
> m1.drawcountries()
> m1.drawstates()
> m1.drawparallels(numpy.arange(25,65,4),labels=[1,0,0,0])
> m1.drawmeridians(numpy.arange(-120,-40,4),labels=[0,0,0,1])
> p.title('Test Cities')
> p.show()
> ========
> kurt
>
> <snip>
>
>
Kurt:  If I look at the least entry in m.states_info (Newport, VT), the 
corresponding x,y location in m.states corresponds to 44.93N, -72.21W, 
which looks about right to me.  I guess I'm still not clear on what the 
issue is.  Could you distill your example code down to something very 
simple that clearly demonstrates the problem?

-Jeff

-- 
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-124
Boulder, CO, USA 80303-3328 Web    : http://tinyurl.com/5telg


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to