def draw_client_density(): m = Basemap(llcrnrlon=-180.,llcrnrlat=-90,urcrnrlon=180.,urcrnrlat=90.,\ resolution='c',projection='cyl') # plot them as filled circles on the map. # first, create a figure. dpi=100 dimx=800/dpi dimy=400/dpi fig=figure(figsize=(dimx,dimy), dpi=dpi, frameon=False, facecolor='blue') # ax=fig.add_axes([0.1,0.1,0.7,0.7],axisbg='g') ax=fig.add_axes([0.0,0.0,1.0,1.0],axisbg='g') canvas = FigureCanvas(fig) results = lookup_client_locations() X,Y,Z = find_client_density(m,results) # s = random.sample(results, 40000) # for t in s: # lat=t[2] # lon=t[3] # # draw a red dot at the center. # xpt, ypt = m(lon, lat) # m.plot([xpt],[ypt],'ro', zorder=10) # draw coasts and fill continents. m.drawcoastlines(linewidth=0.5) m.drawcountries(linewidth=0.5) m.drawlsmask([100,100,100,0],[0,0,255,255]) # m.fillcontinents(color='green') palette = cm.YlOrRd m.imshow(Z,palette,extent=(m.xmin,m.xmax,m.ymin,m.ymax),interpolation='gaussian',zorder=0) # l,b,w,h = ax.get_position() # cax = axes([l+w+0.075, b, 0.05, h]) # colorbar(cax=cax) # draw colorbar canvas.print_figure(outdir+'/clientmap.png', dpi=100)
from matplotlib.toolkits.basemap import Basemap from pylab import title, show, arange # create Basemap instance for Orthographic (satellite view) projection. lon_0 = float(raw_input('enter reference longitude (lon_0):')) lat_0 = float(raw_input('enter reference latitude (lat_0):')) m = Basemap(projection='ortho', lon_0=lon_0, lat_0=lat_0) # plot land-sea mask. rgba_land = (0, 255, 0, 255) # land green. rgba_ocean = (0, 0, 255, 255) # ocean blue. # lakes=True means plot inland lakes with ocean color. m.drawlsmask(rgba_land, rgba_ocean, lakes=True) # draw parallels and meridians. m.drawparallels(arange(-90., 120., 30.)) m.drawmeridians(arange(0., 420., 60.)) m.drawmapboundary() title('Orthographic Map Centered on Lon=%s, Lat=%s' % (lon_0, lat_0)) show()
from matplotlib.toolkits.basemap import Basemap from pylab import title, show, arange # create Basemap instance for Geostationary (satellite view) projection. lon_0 = float(raw_input('enter reference longitude (lon_0):')) h = float(raw_input('enter satellite height above equator in meters (satellite_height):')) m = Basemap(projection='geos',lon_0=lon_0,satellite_height=h,rsphere=(6378137.00,6356752.3142),) # plot land-sea mask. rgba_land = (0,255,0,255) # land green. rgba_ocean = (0,0,255,255) # ocean blue. # lakes=True means plot inland lakes with ocean color. m.drawlsmask(rgba_land, rgba_ocean, lakes=True) # draw parallels and meridians. m.drawparallels(arange(-90.,120.,30.)) m.drawmeridians(arange(0.,420.,60.)) m.drawmapboundary() title('Geostationary Map Centered on Lon=%s, Satellite Height=%s' % (lon_0,h)) show()