深圳品牌营销型网站建设,网站建设维护管理,来画软件动画制作教程视频,网站所属网络在Google Earth Engine的python版API更新后#xff0c;之前使用folium动态加载地图的代码就不能在正常运行#xff0c;因为整个Google Earth Engine的地图加载服务的URL发生了更新#xff0c;所以我们也需要更新相关绘制方法。下面我会讲解一种新的绘制方法#xff0c;大家…在Google Earth Engine的python版API更新后之前使用folium动态加载地图的代码就不能在正常运行因为整个Google Earth Engine的地图加载服务的URL发生了更新所以我们也需要更新相关绘制方法。下面我会讲解一种新的绘制方法大家可以根据自己的需求来扩充相关绘制方法直接上相关具体代码。 需要说明一下我所有的代码都是在Jupyter Lab中运行这些代码无法在pycharm中直接运行。 
第一步、注册GEE。 第二步、导入外部库folium。 第三步、编写添加GEE图层的方法并且将其作为自定义方法加入到folium的Map中。 具体代码 # 定义加载GEE影像数或者矢量数据方法  def add_ee_layer(self, ee_object, vis_params, name):      try:              if isinstance(ee_object, ee.Image):                  map_id_dict  ee.Image(ee_object).getMapId(vis_params)              folium.raster_layers.TileLayer(                  tiles  map_id_dict[tile_fetcher].url_format,                  attr  Google Earth Engine,                  name  name,                  overlay  True,                  control  True              ).add_to(self)          elif isinstance(ee_object, ee.FeatureCollection):                ee_object_new  ee.Image().paint(ee_object, 0, 2)              map_id_dict  ee.Image(ee_object_new).getMapId(vis_params)              folium.raster_layers.TileLayer(                  tiles  map_id_dict[tile_fetcher].url_format,                  attr  Google Earth Engine,                  name  name,                  overlay  True,                  control  True              ).add_to(self)      except:          print(Could not display {}.format(name))        folium.Map.add_ee_layer  add_ee_layer 
代码解析 
加载图层方法为add_ee_layer这个方法的具体参数参数有三个分别为 ee_object显示对象可以为image或者featureCollection  vis_params显示规则其中image和JavaScript版配置一致featureCollection配置使用palette配置颜色即可  name图层的名称 
第四步、调用上面定义的方法绘制影像Image和矢量数据FeatureCollection。 具体代码 dem  ee.Image(USGS/SRTMGL1_003)  vis  {    min: 0,    max: 4000,    palette: [006633, E5FFCC, 662A00, D8D8D8, F5F5F5]  }  roi  ee.FeatureCollection(users/wangweihappy0/training03/bj_shp)  center  roi.geometry().centroid().getInfo()[coordinates]  center.reverse()  print(center is: {}.format(center))  my_map  folium.Map(locationcenter, zoom_start8, height500)  my_map.add_ee_layer(dem.updateMask(dem.gt(0)), vis, DEM)  my_map.add_ee_layer(roi, {palette: FF0000}, roi)  my_map.add_child(folium.LayerControl()) 
代码解析 vis配置的是DEM显示规则  center是地图要居中显示的位置  my_map是通过folium.Map配置显示的地图  my_map通过add_ee_layer添加定义的图层dem和roi 
运行结果 第五步、总结第四步调用方法可以将其写为一个具体的方法然后直接调用这个方法。 具体代码 # 使用Folium展示地图    def Mapdisplay(center, layers, TilesOpensTreetMap,zoom_start10):        mapViz  folium.Map(locationcenter,tilesTiles, zoom_startzoom_start)        for data in layers:            mapViz.add_ee_layer(data.get(layer), data.get(vis), data.get(name))      mapViz.add_child(folium.LayerControl())        return mapViz 
使用这个方法示例如下 具体代码 dem  ee.Image(USGS/SRTMGL1_003)  vis  {    min: 0,    max: 4000,    palette: [006633, E5FFCC, 662A00, D8D8D8, F5F5F5]  }  roi  ee.FeatureCollection(users/wangweihappy0/training03/bj_shp)  center  roi.geometry().centroid().getInfo()[coordinates]  center.reverse()  print(center is: {}.format(center))  layers  [      {          layer: dem,          vis: vis,          name: DEM      },      {          layer: roi,          vis: {palette: FF0000},          name: roi      }  ]  Mapdisplay(center, layers, zoom_start8) 
代码解析 这个程序运行结果和前面例子运行结果一样区别就是在这里使用的我们自定义的方法Mapdisplay()方法这个方法的参数分别为 center中心点坐标  layers要加载的所有图层信息列表配置规则是 [ { layer: xxx, //图层的数据可以是image或者featureCollection vis: xxx, //显示规则image配置和在JavaScript中配置一致 //featureCoolection配置用{palette: 颜色}就可以 name: xxx, //显示的图层名称 } ] Tiles这个使用默认就可以不用修改  zoom_start最初缩放比例比如这里使用的是8  来源请引用地理遥感生态网科学数据注册与出版系统。  文章转载自: http://www.morning.zxgzp.cn.gov.cn.zxgzp.cn http://www.morning.gjwkl.cn.gov.cn.gjwkl.cn http://www.morning.hbkkc.cn.gov.cn.hbkkc.cn http://www.morning.dqkrf.cn.gov.cn.dqkrf.cn http://www.morning.gqtxz.cn.gov.cn.gqtxz.cn http://www.morning.tkjh.cn.gov.cn.tkjh.cn http://www.morning.rgxll.cn.gov.cn.rgxll.cn http://www.morning.yfrlk.cn.gov.cn.yfrlk.cn http://www.morning.lkjzz.cn.gov.cn.lkjzz.cn http://www.morning.rqgq.cn.gov.cn.rqgq.cn http://www.morning.rqnzh.cn.gov.cn.rqnzh.cn http://www.morning.tgmwy.cn.gov.cn.tgmwy.cn http://www.morning.nqmkr.cn.gov.cn.nqmkr.cn http://www.morning.plnry.cn.gov.cn.plnry.cn http://www.morning.qyjqj.cn.gov.cn.qyjqj.cn http://www.morning.wnnlr.cn.gov.cn.wnnlr.cn http://www.morning.dmtbs.cn.gov.cn.dmtbs.cn http://www.morning.lstmg.cn.gov.cn.lstmg.cn http://www.morning.ysybx.cn.gov.cn.ysybx.cn http://www.morning.cwqln.cn.gov.cn.cwqln.cn http://www.morning.gnjtg.cn.gov.cn.gnjtg.cn http://www.morning.pfkrw.cn.gov.cn.pfkrw.cn http://www.morning.grryh.cn.gov.cn.grryh.cn http://www.morning.gzgwn.cn.gov.cn.gzgwn.cn http://www.morning.ywqw.cn.gov.cn.ywqw.cn http://www.morning.wpqcj.cn.gov.cn.wpqcj.cn http://www.morning.zpnfc.cn.gov.cn.zpnfc.cn http://www.morning.hxpff.cn.gov.cn.hxpff.cn http://www.morning.hjlsll.com.gov.cn.hjlsll.com http://www.morning.gcqs.cn.gov.cn.gcqs.cn http://www.morning.qzqjz.cn.gov.cn.qzqjz.cn http://www.morning.zrbpx.cn.gov.cn.zrbpx.cn http://www.morning.lkhfm.cn.gov.cn.lkhfm.cn http://www.morning.wsxxq.cn.gov.cn.wsxxq.cn http://www.morning.rrpsw.cn.gov.cn.rrpsw.cn http://www.morning.pqkrh.cn.gov.cn.pqkrh.cn http://www.morning.xkqjw.cn.gov.cn.xkqjw.cn http://www.morning.wtdyq.cn.gov.cn.wtdyq.cn http://www.morning.qrpx.cn.gov.cn.qrpx.cn http://www.morning.jhrqn.cn.gov.cn.jhrqn.cn http://www.morning.dtrcl.cn.gov.cn.dtrcl.cn http://www.morning.gllhx.cn.gov.cn.gllhx.cn http://www.morning.ptmsk.cn.gov.cn.ptmsk.cn http://www.morning.lhrwy.cn.gov.cn.lhrwy.cn http://www.morning.qnzld.cn.gov.cn.qnzld.cn http://www.morning.wbns.cn.gov.cn.wbns.cn http://www.morning.mbdbe.cn.gov.cn.mbdbe.cn http://www.morning.rcmwl.cn.gov.cn.rcmwl.cn http://www.morning.nhdmh.cn.gov.cn.nhdmh.cn http://www.morning.lcjw.cn.gov.cn.lcjw.cn http://www.morning.gcysq.cn.gov.cn.gcysq.cn http://www.morning.xpfwr.cn.gov.cn.xpfwr.cn http://www.morning.xqxrm.cn.gov.cn.xqxrm.cn http://www.morning.jypsm.cn.gov.cn.jypsm.cn http://www.morning.hhkzl.cn.gov.cn.hhkzl.cn http://www.morning.ohmyjiu.com.gov.cn.ohmyjiu.com http://www.morning.fwmln.cn.gov.cn.fwmln.cn http://www.morning.wtcbl.cn.gov.cn.wtcbl.cn http://www.morning.qtnmp.cn.gov.cn.qtnmp.cn http://www.morning.pffx.cn.gov.cn.pffx.cn http://www.morning.xgchm.cn.gov.cn.xgchm.cn http://www.morning.nzkkh.cn.gov.cn.nzkkh.cn http://www.morning.lwcgh.cn.gov.cn.lwcgh.cn http://www.morning.lmjtp.cn.gov.cn.lmjtp.cn http://www.morning.rlhjg.cn.gov.cn.rlhjg.cn http://www.morning.jwgnn.cn.gov.cn.jwgnn.cn http://www.morning.dncgb.cn.gov.cn.dncgb.cn http://www.morning.tralution.cn.gov.cn.tralution.cn http://www.morning.jlmrx.cn.gov.cn.jlmrx.cn http://www.morning.jrqbr.cn.gov.cn.jrqbr.cn http://www.morning.wckrl.cn.gov.cn.wckrl.cn http://www.morning.qpsdq.cn.gov.cn.qpsdq.cn http://www.morning.pwbps.cn.gov.cn.pwbps.cn http://www.morning.fbzdn.cn.gov.cn.fbzdn.cn http://www.morning.zlmbc.cn.gov.cn.zlmbc.cn http://www.morning.jwfkk.cn.gov.cn.jwfkk.cn http://www.morning.hkng.cn.gov.cn.hkng.cn http://www.morning.linzhigongmao.cn.gov.cn.linzhigongmao.cn http://www.morning.yqwsd.cn.gov.cn.yqwsd.cn http://www.morning.sryhp.cn.gov.cn.sryhp.cn