ArcGIS ClassBreaksRenderer с локальным JSON

Я пытался раскрасить полигоны на основе атрибутов с помощью ClassBreaksRenderer в ArcGIS JS API. Мой источник данных - это локальный файл json, который, как я подозреваю, является причиной того, что он не работает. Я основывал свое тестирование на примере, приведенном в документации: https://developers.arcgis.com/javascript/3/jssamples/renderer_class_breaks.html Где я могу заменить указатель FeatureLayer следующим образом:

оригинал:

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 отображается, и все атрибуты отображаются во всплывающем окне при щелчке по многоугольникам, но я не могу применить какой-либо цвет к файлу, он просто отображается в полупрозрачном зеленом оттенке по умолчанию. Фактически, единственный способ, которым я могу вообще изменить цвет слоя 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 для этого проекта.

Спасибо, что искали.


person Taldor    schedule 01.10.2016    source источник


Ответы (1)


Вы правы, вы не можете создать экземпляр FeatureLayer с uri для файла в вашей локальной файловой системе, это должен быть действующий сервис REST в любом из допустимых форматов (ArcGIS REST, WMS и т. Д.).

Что вы можете сделать в своем сценарии, так это использовать FeatureCollection для создания своего FeatureLayer и двигаться дальше.

Взгляните на этот пример: https://developers.arcgis.com/javascript/3/jssamples/fl_featureCollection.html

Сообщите мне, если это поможет.

person rpepato    schedule 03.10.2016