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

    最近更新的文章很随意,有开发技巧的文章有处理错误的文章,不过虽然这些文章比较短小,但是在实际开发中还是比较有用的。今天说一下如何设置数字保留的位数,比如我们计算结果是 10.12345,我们想保留为10.123。

    直接查看ee.Number的API,其中有一个方法 format(),它就是设置数字格式的,API写的已经非常清楚。比如上面的需求就是 ee.Number(10.12345).format('%.3f’)。需要注意的是这里返回的是一个字符串,如果后续还有其他计算需要使用ee.Number.parse()来解析它。

 

GEE学习笔记 五十八:设置数值数据保留N位_第1张图片

 

    如果要是影像应该如果做,查看相关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学习笔记 五十八:设置数值数据保留N位_第2张图片

 


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

微信号:shi_weihappy

 

你可能感兴趣的:(GEE,GEE开发,GEE,Google,Earth,Engine)