我一直在尝试使用ArcGIS JS API中的ClassBreaksRenderer根据属性对多边形着色。我的数据源是本地的json文件,我怀疑它是不工作的原因。我根据我的文档中提供的示例测试: https://developers.arcgis.com/javascript/3/jssamples/renderer_class_breaks.html 凡如下我可以代替FeatureLayer指针:使用本地JSON的ArcGIS ClassBreaksRenderer
原:
var featureLayer = new FeatureLayer("https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer/3", ...
替换:
var featureLayer = new FeatureLayer("./data/check.json", ...
的geojson图层呈现和所有的属性都可以在点击多边形时弹出窗口中看到,但我似乎无法将任何颜色应用于该文件,它只是呈现半透明gre的默认阴影恩。事实上,我可以得到JSON层都改变颜色的唯一途径是,如果我需要简单的渲染:esri/renderers/SimpleRenderer
然后配置如下,依然遵循了ClassBreaksRenderer例子否则:
var simpleJson = {
"type": "simple",
"label": "",
"description": "",
"symbol": {
"color": [255,0,50,200],
"style": "esriSFSSolid",
"type": "esriSFS"
}
}
featureLayer.renderer = new SimpleRenderer(simpleJson);
我想知道API是否不支持本地json文件,在这种情况下,我会考虑切换到此项目的Leaflet。
感谢您的期待。