def getWMS(url_base): mercator_url1 = "http://nrtcmems.mercator-ocean.fr/thredds/wms/global-analysis-forecast-phys-001-024" mercator_url2 = "http://nrtcmems.mercator-ocean.fr/thredds/wms/global-analysis-forecast-phys-001-024-2hourly-t-u-v-ssh" mercator_url3 = "http://rancmems.mercator-ocean.fr/thredds/wms/dataset-global-reanalysis-phy-001-025-ran-fr-glorys2v4-daily" ll_request = False if url_base is mercator_url1 or url_base is mercator_url2 or url_base is mercator_url3: print "Mercator case" if 'http_proxy' in os.environ: del os.environ['http_proxy'] if 'https_proxy' in os.environ: del os.environ['https_proxy'] else: print "Not internal server" if not "http_proxy" in os.environ: print "Set the http_proxy variable to pass the proxy" sys.exit(1) serverurl = url_base[0] version = "1.1.1" url = url_base[ 0] + '?service=WMS&version=' + version + '&request=GetCapabilities' lon_min = -118.8 lon_max = -108.6 lat_min = 22.15 lat_max = 32.34 m = Basemap(llcrnrlon=lon_min, urcrnrlat=lat_max, urcrnrlon=lon_max, llcrnrlat=lat_min, resolution='i', epsg=4326) m.wmsimage(serverurl, xpixels=500, verbose=True, layers=['thetao'], elevation='-0.49402499198913574', colorscalerange='271.2,308', numcolorbands='20', logscale=False, styles=['boxfill/ferret']) # styles=['boxfill/rainbow']) #time=datetime.utcnow().strftime('%Y-%m-%dT12:00:00.000Z'), plt.figure() m.drawcoastlines(linewidth=0.25) parallels = np.arange(20, 36, 2.) a = m.drawparallels(parallels, labels=[1, 0, 0, 0], fontsize=10) meridians = np.arange(-120, -100, 2.) b = m.drawmeridians(meridians, labels=[0, 0, 0, 1], fontsize=10)
def plot_city_map(city_slice: CitySlice, field: CityField, need_show=True): plt.figure(figsize=(10, 10)) if city_slice.city_name == 'msc': lat0, lon0 = 55.75378, 37.6223 elif city_slice.city_name == 'spb': lat0, lon0 = 59.92697, 30.31852 dx = 0.3 lon_min = lon0 - dx lon_max = lon0 + dx lat_min = lat0 - dx lat_max = lat0 + dx print('map borders:', lon_min, lat_min, lon_max, lat_max) bm = Basemap(llcrnrlon=lon_min, urcrnrlat=lat_max, urcrnrlon=lon_max, llcrnrlat=lat_min, resolution='h', epsg=4326) bm.drawcoastlines() # bm.bluemarble(alpha=0.3) bmlons, bmlats = bm(city_slice.points_lons, city_slice.points_lats) bmxi, bmyi = bm(field.xi, field.yi) gauss_field = gaussian_filter(field.zi, 1.) contourf = bm.contourf(bmyi, bmxi, gauss_field, alpha=0.6, cmap='rainbow') contour = bm.contour(bmyi, bmxi, gauss_field, colors='k', interpolation='none') serverurl = 'http://vmap0.tiles.osgeo.org/wms/vmap0?' bm.wmsimage( serverurl, xpixels=900, verbose=True, layers=['basic', 'river', 'inwater', 'ctylabel', 'rail', 'priroad', 'secroad'], format='jpeg' ) bm_scatter_plot = bm.scatter(bmlons, bmlats, s=10, color='red') plt.colorbar(contourf) expr_name = '{} {}'.format(city_slice.expr, city_slice.date) plt.title(expr_name) img_ofile = 'img/{}_{}.png'.format(expr_name, field.xi.shape[0]).replace(':', '_') print(img_ofile) plt.savefig(img_ofile, dpi=300) if need_show: plt.show()
cs2cs_args = "epsg:26949" tex_levels = list(np.arange(0,135,5)) ss_level=[0,2.5,5,7.5,10,12.5,15,17.5,20,22.5,25,27.5,30,32.5,35] fig = plt.figure(figsize=(15,6)) ax = fig.add_subplot(1,5,1) ax.set_title('50 square pixel') m = Basemap(projection='merc', epsg=cs2cs_args.split(':')[1], llcrnrlon=np.min(glon-0.0009), llcrnrlat=np.min(glat-0.0006), urcrnrlon=np.max(glon+0.0009), urcrnrlat=np.max(glat+0.0009)) m.wmsimage(server='http://grandcanyon.usgs.gov/arcgis/services/Imagery/ColoradoRiverImageryExplorer/MapServer/WmsServer?', layers=['0'], xpixels=1000) x,y = m.projtran(glon, glat) im = m.contourf(x,y,ss_data_50.T, cmap='Greys_r',levels=ss_level) im2 = m.contourf(x, y, tex_data_50.T, alpha=0.4, cmap='YlOrRd', levels=tex_levels)#levels=tex_levels divider = make_axes_locatable(ax) cax = divider.append_axes("right", size="5%", pad=0.1) cax2 = divider.append_axes("right", size="5%", pad=0.3) cbr = plt.colorbar(im, cax=cax) cbr2 = plt.colorbar(im2,cax=cax2) ax1 = fig.add_subplot(1,5,2) ax1.set_title('70 square pixel') m1 = Basemap(projection='merc', epsg=cs2cs_args.split(':')[1],
lon_min = -118.8 lon_max = -108.6 lat_min = 22.15 lat_max = 32.34 m = Basemap(llcrnrlon=lon_min, urcrnrlat=lat_max, urcrnrlon=lon_max, llcrnrlat=lat_min, resolution='i', epsg=4326) plt.figure() m.wmsimage(serverurl, xpixels=500, verbose=True, layers=['Temperature_height_above_ground'], styles=['boxfill/rainbow'], time=datetime.utcnow().strftime('%Y-%m-%dT00:00:00.000Z'), elevation='2', colorscalerange='271.2,308', numcolorbands='20', logscale=False) m.drawcoastlines(linewidth=0.25) parallels = np.arange(20, 36, 2.) a = m.drawparallels(parallels, labels=[1, 0, 0, 0], fontsize=10) meridians = np.arange(-120, -100, 2.) b = m.drawmeridians(meridians, labels=[0, 0, 0, 1], fontsize=10) epsg = 32661 m = Basemap(epsg=epsg, resolution='l', width=20000.e3, height=20000.e3) plt.figure() m.wmsimage(serverurl, xpixels=500,
circ5 = Line2D([0], [0], linestyle="none", marker="o", markersize=10, markerfacecolor=colors[4],alpha=a_val) #Total extents (i.e. misplaced SS and multibeam) fig, (ax,ax1) = plt.subplots(figsize=(13,8),ncols=2) #Start with april sidescan sonar ax.set_title('April 2014 \n Sidescan Sonar Imagery') m = Basemap(projection='merc', epsg=cs2cs_args.split(':')[1], llcrnrlon=np.nanmin(april_lon)-0.0001, llcrnrlat=np.nanmin(april_lat)-0.0002, urcrnrlon=np.nanmax(april_lon)+0.0001, urcrnrlat=np.nanmax(april_lat)+0.0002,ax=ax) m.wmsimage(server='http://grandcanyon.usgs.gov/arcgis/services/Imagery/ColoradoRiverImageryExplorer/MapServer/WmsServer?', layers=['3'], xpixels=1000) x,y = m.projtran(april_lon, april_lat) im = m.contourf(x,y,april_ss.T, cmap='Greys_r', levels=[0,2.5,5,7.5,10,12.5,15,17.5,20,22.5,25,27.5,30,32.5,35]) divider = make_axes_locatable(ax) cax = divider.append_axes("right", size="5%", pad=0.1) cbr = plt.colorbar(im, cax=cax) cbr.set_label('Sidescan Intensity [dBW]') m.readshapefile(r"C:\workspace\Reach_4a\Multibeam\mb_sed_class\output\shapefiles\visual_seg_2_geo","layer",drawbounds = False) #sand, sand/gravel, gravel, sand/rock, rock s_patch, g_patch, r_patch, = [],[],[] for info, shape in zip(m.layer_info, m.layer): if info['substrate'] == 'sand' : s_patch.append(Polygon(np.asarray(shape),True)) if info['substrate'] == 'gravel': g_patch.append(Polygon(np.asarray(shape),True))
######################################################################################################################## # Begin Subplot 1 ######################################################################################################################### ######################################################################################################################### print 'Now Plotting April 2014...' fig = plt.figure(figsize=(9,10)) ax = plt.subplot2grid((10,2),(0, 0),rowspan=9) ax.set_title(title_04) m = Basemap(projection='merc', epsg=cs2cs_args.split(':')[1], llcrnrlon=np.min(glon_04) - 0.0004, llcrnrlat=np.min(glat_04) - 0.0006, urcrnrlon=np.max(glon_04) + 0.0006, urcrnrlat=np.max(glat_04) + 0.0009) x,y = m.projtran(glon_04, glat_04) m.wmsimage(server=wms_url, layers=['3'], xpixels=1000) im = m.contourf(x,y,data_04.T, cmap=c_ramp) divider = make_axes_locatable(ax) cax = divider.append_axes("right", size="5%", pad=0.05) cbr = plt.colorbar(im, cax=cax) cbr.set_label(cbr_txt, size=10) #read shapefile and create polygon collections m.readshapefile(geo_shp_04,"layer",drawbounds = False) #sand, gravel, boulders s_patch, g_patch, b_patch =[],[],[] for info, shape in zip(m.layer_info, m.layer): if info['substrate'] == 'sand': s_patch.append(Polygon(np.asarray(shape),True)) if info['substrate'] == 'gravel':
from mpl_toolkits.basemap import Basemap import matplotlib.pyplot as plt map = Basemap(llcrnrlon=8.35, llcrnrlat=41.225, urcrnrlon=10.01, urcrnrlat=43.108, projection='cyl', epsg=4326) wms_server = "http://www.ga.gov.au/gis/services/topography/Australian_Topography/MapServer/WMSServer" wms_server = "http://wms.geosignal.fr/metropole?" map.wmsimage(wms_server, layers=["Communes", "Nationales", "Regions"], verbose=True) plt.show()
lat_min = -60; lat_max = 30.0 # BR lon_min = -80; lon_max = -30.0 lat_min = -37; lat_max = 13.0 m = Basemap(llcrnrlon=lon_min, urcrnrlat=lat_max, urcrnrlon=lon_max, llcrnrlat=lat_min,resolution='i',epsg=4326) m.drawcoastlines(linewidth=0.25) m.drawcountries(linewidth=0.25) m.wmsimage(wmsl_oneg['server_url'], xpixels=500,verbose=True, layers=wmsl_oneg['layers'], format='image/png', transparent=True, alpha=0.5, ) m.wmsimage(wmsl_br_blt['server_url'], xpixels=500,verbose=True, layers=wmsl_br_blt['layers'], format='image/png', transparent=True, alpha=0.5, ) #f = plt.figure() plt.show()
# Begin the plot cs2cs_args = "epsg:26949" fig = plt.figure(figsize=(15, 12)) ax = plt.subplot2grid((5, 2), (0, 0), rowspan=4) ax.set_title("R02028: 3 meter grid") m = Basemap( projection="merc", epsg=cs2cs_args.split(":")[1], llcrnrlon=np.nanmin(r28_lon) - 0.0004, llcrnrlat=np.nanmin(r28_lat) - 0.0004, urcrnrlon=np.nanmax(r28_lon) + 0.0004, urcrnrlat=np.nanmax(r28_lat) + 0.0004, ) m.wmsimage( server="http://grandcanyon.usgs.gov/arcgis/services/Imagery/ColoradoRiverImageryExplorer/MapServer/WmsServer?", layers=["3"], xpixels=1000, ) x, y = m.projtran(r28_lon, r28_lat) im = m.contourf(x, y, R02028.T, cmap="Greys_r", levels=ss_level) divider = make_axes_locatable(ax) cax = divider.append_axes("right", size="5%", pad=0.1) cbr = plt.colorbar(im, cax=cax) m.readshapefile( r"C:\workspace\Reach_4a\Multibeam\mb_sed_class\output\shapefiles\may2014_3m_buff_geo", "layer", drawbounds=False ) # sand, sand/gravel, gravel, sand/rock, rock s_patch, sg_patch, g_patch, sr_patch, r_patch, = [], [], [], [], [] bound = max(stat["count"] for stat in z_stats_28) for info, shape in zip(m.layer_info, m.layer): if info["substrate"] == "sand" and info["count_28"] == bound:
from mpl_toolkits.basemap import Basemap, pyproj from datetime import datetime import numpy as np import matplotlib.pyplot as plt serverurl='http://motherlode.ucar.edu:8080/thredds/wms/fmrc/NCEP/NAM/CONUS_12km/NCEP-NAM-CONUS_12km-noaaport_best.ncd?' lon_min = -118.8; lon_max = -108.6 lat_min = 22.15; lat_max = 32.34 m = Basemap(llcrnrlon=lon_min, urcrnrlat=lat_max, urcrnrlon=lon_max, llcrnrlat=lat_min,resolution='i',epsg=4326) plt.figure() m.wmsimage(serverurl,xpixels=500,verbose=True, layers=['Temperature_height_above_ground'], styles=['boxfill/rainbow'], time=datetime.utcnow().strftime('%Y-%m-%dT00:00:00.000Z'), elevation='2', colorscalerange='271.2,308',numcolorbands='20',logscale=False) m.drawcoastlines(linewidth=0.25) parallels = np.arange(20,36,2.) a=m.drawparallels(parallels,labels=[1,0,0,0],fontsize=10) meridians = np.arange(-120,-100,2.) b=m.drawmeridians(meridians,labels=[0,0,0,1],fontsize=10) epsg = 32661 m = Basemap(epsg=epsg, resolution='l',width=20000.e3,height=20000.e3) plt.figure() m.wmsimage(serverurl,xpixels=500, layers=['Temperature_height_above_ground'], styles=['boxfill/rainbow'], time=datetime.utcnow().strftime('%Y-%m-%dT00:00:00.000Z'),
print 'Now plotting September 2014...' #ortho_lon, ortho_lat = trans(ortho_x, ortho_y, inverse=True) cs2cs_args = "epsg:26949" ss_level=[0,2.5,5,7.5,10,12.5,15,17.5,20,22.5,25,27.5,30,32.5,35] fig = plt.figure(figsize=(15,12)) ax = plt.subplot2grid((10,2),(0, 0),rowspan=9) ax.set_title('September 2014 \n R01767') m = Basemap(projection='merc', epsg=cs2cs_args.split(':')[1], llcrnrlon=np.min(glon) - 0.0002, llcrnrlat=np.min(glat) - 0.0006, urcrnrlon=np.max(glon) + 0.0002, urcrnrlat=np.max(glat) + 0.0006) m.wmsimage(server=wms_url, layers=['3'], xpixels=1000) x,y = m.projtran(glon, glat) im = m.contourf(x,y,data.T, cmap='Greys_r',levels=ss_level) divider = make_axes_locatable(ax) cax = divider.append_axes("right", size="5%", pad=0.05) cbr = plt.colorbar(im, cax=cax) cbr.set_label('Sidescan Intensity [dBW]', size=10) #read shapefile and create polygon collections ##NOTE: Shapefile has to be in WGS84 m.readshapefile( r"C:\workspace\Merged_SS\window_analysis\shapefiles\tex_seg_2014_09_67_geo","layer",drawbounds = False) #sand, sand/gravel, gravel/sand, ledge, gravel, gravel/boulders, boulders, boulder s_patch, g_patch, b_patch =[],[],[] for info, shape in zip(m.layer_info, m.layer):
from mpl_toolkits.basemap import Basemap import matplotlib.pyplot as plt map = Basemap(llcrnrlon=8.35,llcrnrlat=41.225,urcrnrlon=10.01,urcrnrlat=43.108, projection='cyl', epsg=4326) wms_server = "http://www.ga.gov.au/gis/services/topography/Australian_Topography/MapServer/WMSServer" wms_server = "http://wms.geosignal.fr/metropole?" map.wmsimage(wms_server, layers=["Communes", "Nationales", "Regions"], verbose=True) plt.show()
m = Basemap(llcrnrlon=lon_min, urcrnrlat=lat_max, urcrnrlon=lon_max, llcrnrlat=lat_min, resolution='i', epsg=4326) m.drawcoastlines(linewidth=0.25) m.drawcountries(linewidth=0.25) m.wmsimage( wmsl_oneg['server_url'], xpixels=500, verbose=True, layers=wmsl_oneg['layers'], format='image/png', transparent=True, alpha=0.5, ) m.wmsimage( wmsl_br_blt['server_url'], xpixels=500, verbose=True, layers=wmsl_br_blt['layers'], format='image/png', transparent=True, alpha=0.5, )