GEE(Python)逐像元线性拟合
终于把GEE的python环境配置好了,很早就想尝试吴秋生老师的可视化库了【快乐】
这里贴一个GEE线性拟合的Python版(以60年的TerraClimate降水数据为例)。
#edited by Xinglu Cheng 2021.12.3
import ee
import os
from ipygee import Map
from IPython.display import Image
import geemapee.Initialize()
gee_Map = geemap.Map(center=[35.0, 119.30], zoom=5)
gee_Map.add_basemap('Gaode.Normal')#这里是调用ipygee的Map功能,也是很好的可视化工具,但是个人更喜欢吴秋生老师的geemap
# myMap = Map()
# myMap.show()
# point = ee.Geometry.Point([119.30, 35.0])
# myMap.centerObject(point,zoom=5)#加入研究区
study_area = ee.FeatureCollection("users/2210902126/Study_Area")
#myMap.setOptions("HYBRID")#添加时间波段的函数
def createTimeBand(img): date = img.metadata("date").subtract(1960)return date.rename("year").clip(study_area).addBands(img)#遍历获取月降水数据,并循环计算每年的总降水量,存入list中
datalist=ee.List([])
year=1960
for i in range(60):datalist=datalist.add(ee.ImageCollection("IDAHO_EPSCOR/TERRACLIMATE").filter(ee.Filter.date(ee.Date(str(year)+"-01-01"), ee.Date(str(year+1)+"-01-01"))).select('pr').sum().clip(study_area).set("date",ee.Number(year)))year += 1varyCollection=ee.ImageCollection.fromImages(datalist)#将list转为ImageCollection
varyCollection = varycollection.map(createTimeBand)#调用函数
linear = varyCollection.reduce(ee.Reducer.linearFit())#对每个像元线性回归
print(linear.getInfo())#渲染显示
visualization = {'max':3,'min':-3,'palette': ['b30000','d7301f','ef6548','fc8d59','fdbb84','fdd49e','fee8c8','f7fcf0','e0f3db','ccebc5','a8ddb5','7bccc4','4eb3d3','2b8cbe','0868ac']
}
gee_Map.addLayer(linear.select('scale'),visualization,name='stable pre trend')#这里可以选择“offset”波段,渲染出来的则是各个像元的截距值
gee_Map
效果如下图所示(这里每个像元值是其60年数据线性拟合的斜率,蓝色是正值,红色是负值):
以上。owo
GEE(Python)逐像元线性拟合相关推荐
- python实现多元线性拟合、一元多项式拟合、多元多项式拟合
数据分析中经常会使用到数据拟合,本文中将阐述如何实现一元以及多元的线性拟合以及多项式拟合,本文中只涉及实现方式,不涉及理论知识. 模型拟合中涉及的误差评估方法如下所示: import numpy as ...
- python 物理实验_基于Python和梯度下降算法的物理实验数据一元线性拟合方法
基于 Python 和梯度下降算法的物理实验数据一元线性拟 合方法 关毅铬 ; 程敏熙 [期刊名称] < <物理通报> > [年 ( 卷 ), 期] 2019(000)010 ...
- python曲线拟合_python如何实现数据的线性拟合
实验室老师让给数据画一张线性拟合图.不会matlab,就琢磨着用python.参照了网上的一些文章,查看了帮助文档,成功的写了出来 这里用到了三个库 import numpy as np import ...
- Python 散点图线性拟合_机器学习之利用Python进行简单线性回归分析
前言:在利用机器学习方法进行数据分析时经常要了解变量的相关性,有时还需要对变量进行回归分析.本文首先对人工智能/机器学习/深度学习.相关分析/因果分析/回归分析等易混淆的概念进行区分,最后结合案例介绍 ...
- Python之数据分析(numpy线性模型、线性预测、线性拟合)
文章目录 一.线性预测 二.线性拟合 线性模型分为两种:线性预测和线性拟合,这两种都可以起到预测走势和数据点的作用,当然,预测是存在一定误差的,因此这种预测图像仅供参考. 一.线性预测 1.基本概念 ...
- Python中ArcPy实现对大量长时间序列栅格遥感影像批量逐像元求取像素平均值
本文介绍基于Python中ArcPy模块,对大量长时间序列栅格遥感影像文件的每一个像元进行多时序平均值的求取. 在遥感应用中,我们经常需要对某一景遥感影像中的全部像元的像素值进行平均值求取-- ...
- python数据拟合怎么做的,python如何实现数据的线性拟合
实验室老师让给数据画一张线性拟合图.不会matlab,就琢磨着用python.参照了网上的一些文章,查看了帮助文档,成功的写了出来 这里用到了三个库 import numpy as np import ...
- Python 散点图线性拟合_一文教你全面掌握用Python实现线性回归
全文共4968字,预计学习时长15分钟或更长 本文旨在为读者理解和应用线性回归时提供参考.虽然线性回归算法很简单,但是只有少数人能真正理解其基本原则. 本文首先会深入挖掘线性回归理论,理解其内在的工作 ...
- Python实现部分地区男人身高/体重数据的线性拟合
# Python实现部分地区男人身高/体重数据的线性拟合 import numpy as np import matplotlib.pyplot as plt from scipy import op ...
最新文章
- MySQl笔记8:把good表中商品名为‘诺基亚xxxx‘的商品,改为‘HTCxxxx‘
- webpack.DefinePlugin使用介绍
- python database is locked_sqlite遇到database is locked问题的完美解决
- 根据map键值对,生成update与select语句,单条执行语句
- 强化学习-动态规划_强化学习-第5部分
- 国产物联网操作系统崛起!
- [VB]获取Access数据库的全部对象
- 算法在岗3年小结:模型策略篇
- UML教程6:状态图
- 区块链的发展与未来前景!
- 数据挖掘——数据可视化
- 当游戏设计遇上建筑学
- ProxySQL 入门教程
- 计算机多媒体技术主要有什么特征,多媒体技术特征有哪些_多媒体技术的关键特性介绍...
- mysql duplicateentry_Mysql错误:Duplicate entry 'xxx' for key 'PRIMARY'的解决方法_mysql_爱周末...
- 跨平台,跨浏览器兼容性问题_跨浏览器兼容性检查的完整指南
- 【吟风听云】在QQ快速打出Emjoy符号(流汗黄豆!)
- 调用函数----如何在主函数调用子函数
- 带宽、线速、吞吐量概念
- canal的INVALID_TOPIC_EXCEPTION问题
热门文章
- 花火之声不闻于耳 [线段树]
- 技术前沿---5G技术的实现原理
- php 数组的结构和定义
- 解析在线教育培训APP开发
- 如何给PDF文件去水印,10秒轻松搞定
- 【笔记】为什么现代人变得越来越娱乐至死
- java mvp模式_什么是mvp开发模式?(下面就对Android中MVP做一些阐述)
- oracle计算本月天数,oracle中计算某月的天数
- Android 拼音转换工具PinyinUtils
- width mismatch when connecting input pin '/processing system 7_0/irq_f2p'(2) to net 'xlconcat_0_dout