是否可以从ArcGIS Javascript API中的CSVLayer的属性中获取具有特定属性的项目数?
这是csv file。
我的意图是
如果我们要显示“类别”属性中的图例,并且所有文档都在视图中。
还可以基于相同的属性过滤项目吗?
还可以在饼图中显示详细信息吗?
答案 0 :(得分:1)
您可以使用client side queries检索有关可见数据的信息。使用Codepen中的CSVLayer和SceneView,以下代码计算Category = 0
或Category = 2
处功能的数量:
view
.whenLayerView(csvLayer)
.then(function(csvLayerView) {
// Create query
var query = csvLayerView.createQuery();
query.outStatistics = [{
onStatisticField: "CASE WHEN Category = 0 THEN 1 ELSE 0 END",
outStatisticFieldName: "Category0Sum",
statisticType: "sum"
}, {
onStatisticField: "CASE WHEN Category = 2 THEN 1 ELSE 0 END",
outStatisticFieldName: "Category2Sum",
statisticType: "sum"
}];
return csvLayerView.queryFeatures(query);
})
.then(function(response) {
// Print query results
console.log("Query results", response.features[0].attributes);
}).catch(console.error);
每当视图更改时,以下Codepen都会运行此代码,并将新结果行打印到控制台:https://codepen.io/arnofiva/pen/b835cc7b626965332e802fd3385056e9
要查看其他查询选项或如何将结果显示为饼图,请签出以下资源: