GEE学习笔记 八十七:python版GEE动态加载地图方法(更新版)
# 定义加载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
- ee_object,显示对象可以为image或者featureCollection
- vis_params,显示规则,其中image和JavaScript版配置一致,featureCollection配置使用palette配置颜色即可
- name,图层的名称
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(location=center, zoom_start=8, height=500)
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, Tiles="OpensTreetMap",zoom_start=10): mapViz = folium.Map(location=center,tiles=Tiles, zoom_start=zoom_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_start=8)
- center,中心点坐标
- layers,要加载的所有图层信息列表,配置规则是
- Tiles,这个使用默认就可以,不用修改
- zoom_start,最初缩放比例,比如这里使用的是8
GEE学习笔记 八十七:python版GEE动态加载地图方法(更新版)相关推荐
- GEE学习笔记 六十七:【GEE之Python版教程一】GEE学习背景介绍
相信很多人都对GEE已经比较熟悉了(只是不熟悉GEE的Python的API而已),这里只是做一个简单的总结概括一下GEE相关内容. 1.GEE学习基本要求 目前市面上无论出现什么新的技术,总会出现一种 ...
- GEE学习笔记 八十三:【GEE之Python版教程十三】几何图形
遥感分析中用到的数据主要就是这两大类:矢量数据和栅格数据.在Google Earth Eninge中,它为我们讲这两类数据封装成为了以下几类数据. 下面几节内容我会依次讲解相关内容的详细信息,这一节先 ...
- 【Python_PySide2学习笔记(一)】PySide2动态加载UI方式,重写关闭窗体事件
** PySide2设置关闭提示窗口:动态加载UI方式,重写关闭窗体事件 ** ** 前言 ** 转载:https://blog.csdn.net/qq_44703282/article/detail ...
- python爬虫脚本-动态加载实现方法
import requests import json import time from fake_useragent import UserAgent import pandas from lxml ...
- 用Python爬取动态加载的诸如百度的图片
用Python爬取动态加载的诸如百度的图片 使用原因 代码如下 模块介绍 selenium模块 lxml解析模块 requests模块 去除重复 开启多线程 效果如下 留言 使用原因 学习Python ...
- Android插件化学习之路(一)之动态加载综述
前段时间,公司项目完成了插件化的开发,自己也因此学习了很多Android插件化的知识,于是想把这些内容记录下来,本次带来Android插件化的第一篇:动态加载综述 Android插件化学习之路(一)之 ...
- python编程(动态加载)
[ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 脚本语言都有一个优点,就是动态加载.lua语言有这个优点,python也有这个特性.说简单点就是 ...
- 教你用Python爬取动态加载的数据
例子1:爬取豆瓣电影中的电影详情数据 url:https://movie.douban.com/ 1.什么是动态加载的数据: 我们通过requests模块进行数据爬取无法每次都是可见即可得,有些数据是 ...
- python 反射和动态加载_Python的反射
什么是反射 反射是一个很重要的概念,它可以把字符串映射到实例的变量或者实例的方法然后可以去执行调用.修改等操作.它有四个重要的方法: getattr 获取指定字符串名称的对象属性 setattr 为对 ...
最新文章
- 【廖雪峰Python学习笔记】面向对象编程OOP
- 任正非深度剖析技术差距:我们为何憎恨化学?
- Spring使用支付宝扫码支付
- 【正一专栏】内马尔要走快走、走好不送!
- 关于如何在Nomad中保护工作部署的工作流的简要历史
- HDU 5008 Boring String Problem ( 后缀数组求本质不同第k大子串)
- java注释的理解,java注解原理——记录一下自己的理解
- AI议题首次进入世界移动大会,打响第一枪的是LG
- java litjson_仿造 Gson 的自制 json 解析器
- ESP8266+WIFI继电器初识
- 包含所有的计算机视频教程
- Netty傻瓜教程(四):bossGroup, workGroup?
- (附源码)spring boot通用办事流程管理软件 毕业设计211819
- 这156套PS笔刷合集!两天时间给大家盘来了!
- 【Arduino】PTC热敏电阻的介绍和应用
- 一叶知秋,很多IT“专家”其实都只是“砖家”
- 用于情绪测试的软件,第七章 情感心理自我测试心理测评软件
- 金蝶云星空与飞书系统对接方案(飞书审批)
- 如何修改Android应用程序的图标和名字
- 2019 CCPC 女生专场重现赛 Circle