GEE|GEE学习笔记 五十八(设置数值数据保留N位)

【GEE|GEE学习笔记 五十八(设置数值数据保留N位)】最近更新的文章很随意,有开发技巧的文章有处理错误的文章,不过虽然这些文章比较短小,但是在实际开发中还是比较有用的。今天说一下如何设置数字保留的位数,比如我们计算结果是 10.12345,我们想保留为10.123。
直接查看ee.Number的API,其中有一个方法 format(),它就是设置数字格式的,API写的已经非常清楚。比如上面的需求就是 ee.Number(10.12345).format('%.3f’)。需要注意的是这里返回的是一个字符串,如果后续还有其他计算需要使用ee.Number.parse()来解析它。

GEE|GEE学习笔记 五十八(设置数值数据保留N位)
文章图片


如果要是影像应该如果做,查看相关API没发现有这样的方法,那是不是就不能做了呢?其实我们可以用别的方法来做。首先是先将影像扩大N倍,然后转为int,最后在除以N。

具体的代码很简单如下:

//数字设置保留4位小数var a = ee.Number(10.111234); var b = ee.Number.parse(a.format("%.4f")); print(b); //影像保留3位小数var img = ee.Image.constant(1.234343); Map.addLayer(img, {}, "img"); var newImg = img.multiply(1000).toInt().divide(1000); Map.addLayer(newImg, {}, "newImg");

代码分析:
这里我是对影像先扩大1000倍,然后转为int,最后除以1000,这样就保留了3位小数。
运行结果:
GEE|GEE学习笔记 五十八(设置数值数据保留N位)
文章图片


大家如果有问题需要交流或者有项目需要合作,可以微信联系我,加微信好友请留言加上“GEE”。
微信号:shi_weihappy

    推荐阅读