首页 / 浏览问题 / WebGIS / 问题详情
请问如何使用离散点进行克里金插值
2EXP 2022年11月30日
//创建点集合数组
                var points_array = [];
                //传入点集合
                var p1 = new L.supermap.Geometry.Point(x=114,y=40.4,tag=10);
                var p2 = new L.supermap.Geometry.Point(x=116.63,y=42.4,tag=20);
                var p3 = new L.supermap.Geometry.Point(x=113.63,y=38.4,tag=15);
                points_array.push(p1);
                points_array.push(p2);
                points_array.push(p3);
                alert(points_array)

                function interpolationAnalystProcess() {
                    //创建点密度插值分析参数实例
                    interpolationAnalystParameters = new L.supermap.InterpolationKrigingAnalystParameters({
                        //用于做插值分析的数据源中数据集的名称
                        //dataset: "SamplesP@Interpolation",
                        //插值分析结果数据集的名称
                        outputDatasetName: "Kriging_Result",
                        //插值分析结果数据源的名称
                        outputDatasourceName: "Interpolation",
                        //结果栅格数据集存储的像素格式
                        pixelFormat: L.supermap.PixelFormat.DOUBLE,
                        //存储用于进行插值分析的字段名称
                        //zValueFieldName: "AVG_TMP",
                        searchRadius: "0",
                        //普通克吕金插值的类型
                        type: "KRIGING",
                        searchMode: "KDTREE_FIXED_COUNT",
                        bounds: L.bounds([-2640403.63, 1873792.1], [3247669.39, 5921501.4]),
                        //"geometry" 表示对离散点数组进行插值分析
                        InterpolationAnalystTypestring: "geometry",
                        inputPoints: points_array,
                    });
                    //创建克里金插值分析服务对象
                    interpolationAnalystService = new L.supermap.SpatialAnalystService(serviceUrl);
                    //调用克里金插值分析对象的方法:插值分析
                    interpolationAnalystService.interpolationAnalysis(interpolationAnalystParameters, function (serviceResult) {
                        interpolationAnalystResult = serviceResult.result;
                        if (interpolationAnalystResult && interpolationAnalystResult.dataset) {
                            //用栅格专题图展示分析结果
                            showAnalysisResult_ThemeGridRange();
                        } else {
                            alert(serviceResult.error.errorMsg);
                        }
                    });
                }

请问如何使用离散点进行克里金插值?后面专题图的制作也需要传入数据集数组和数据源数组。

2 个回答

您好,使用克里金插值时,数据集是需要设置插值字段的,

该字段是数值型字段(整型、双精度等),此字段需要每一个对象都有值的,克里金插值是根据每个点对象的该属性值来进行插值的,

对于其它参数如果不确定参数影响插值效果的话,建议可以使用iDesktopX,空间分析-栅格分析-普通克里金插值/简单克里金插值/泛克里金插值的功能,来确定参数。
9,823EXP 2022年12月06日
...