随着现代 Web 应用程序中地理信息的广泛使用,将地理信息可视化和分析传达给用户变得越来越重要。在地图上显示海拔高度,温度等离散数据时,等高线是非常有效的工具。@turf/isolines 就是一个可以用来生成等高线的 npm 包。
安装
如果你希望使用 @turf/isolines,首先需要将其安装到你的项目中。在终端窗口中运行以下命令即可。
--- ------- --------------
API 简介
@turf/isolines 模块包含一个名为 "isolines" 的函数,用于生成等值线。它需要三个参数:
- featureCollection
- zProperty
- breaks
其中:
- featureCollection:一个 GeoJSON FeatureCollection 对象,包含要将其转换为等高线的点。必填。
- zProperty:FeatureCollection 对象中代表数据值的属性名称。该属性的值应是数值型。必填。
- breaks:在输入数据范围内生成多少个相等的等值线(数字)。可选,默认值为 15。
生成的等高线在一个名为 "isolines" 的 MultiLineString 类型的 GeoJSON FeatureCollection 对象中返回。
示例代码
假设我们有一个数据集,其中包含一些位置和随机生成的高度(范围为 1-10)。数据如下:
----- ------- - - ----- -------------------- --------- - - ----- ---------- --------- - ----- -------- ------------ ----------- ------ -- ----------- - ----- ------------ ---------- - - -- - ----- ---------- --------- - ----- -------- ------------ ----------- -------- -- ----------- - ----- ------------ ---------- - - -- - ----- ---------- --------- - ----- -------- ------------ ----------- ------- -- ----------- - ----- ------------ ---------- - - -- - ----- ---------- --------- - ----- -------- ------------ ----------- -------- -- ----------- - ----- ------------ ---------- - - -- - ----- ---------- --------- - ----- -------- ------------ ----------- -------- -- ----------- - ----- ------------ ---------- - - - - --
我们现在希望使用 @turf/isolines 将这个数据集转换为等高线。
----- -------- - -------------------------- ----- ------ - -- ----- --------- - ------------ ----- ------- - - ------ -- ----- ------ - ----------------- ---------- --------- --------------------
此代码将在终端窗口中输出一个 MultiLineString GeoJSON FeatureCollection 对象,用于表示五条等高线。
- ----- -------------------- --------- - - ----- ---------- --------- - ----- ------------------ ------------ - ------------ ------- --------------------- -------- ---------------------- -------------------- --------------------- -------------------- --------------------- ------------------- --------------------- -------------------- ---------------------- -------------------- ----------- ------------------- ---------------------- ------- -------------------- ------------------- --------------------- ------------------- ----------- --------- ----------- --------- --------------------- ------------------- - -- ----------- --- --- - - - -
学习和指导意义
@turf/isolines 可以用来将离散数据转换为可交互和易于理解的可视化,对许多应用程序非常有用。尽管它看似简单,但它的实现是典型的几何计算问题,可以帮助你提升地理信息处理的能力。
细节上需要注意的一点是,数据集的属性名称必须与 zProperty 参数指定的属性名称匹配。如果这两者不匹配,函数将返回一个空的 MultiLineString 类型的 GeoJSON FeatureCollection 对象。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5eedae2eb5cbfe1ea0610dc4