2014-10-06 6 views
1

Я пытаюсь установить стиль для каждого многоугольника, особенно цвета заливки. Я знаю, что могу это сделать:Google Maps GeoJson styling

map.data.loadGeoJson('http://localhost:8080/my.json'); 
map.data.setStyle({  
    fillColor: 'red' 
}); 

Но я хочу, чтобы установить цвет заливки на полигонах отдельно. Я попытался установить следующую this answer on GIS Stack, но он не работает:

{ 
    "type": "FeatureCollection", 
    "features": [ 
     { 
      "type": "Feature", 
      "properties": {     
      }, 
      "geometry": { 
       "type": "Polygon", 
       "coordinates": [ 
        [ 
        [ 
         -80.4545, 
         43.5061 
        ] 
       ] 
       ] 
      }, 
      "style":{ 
       "fill":"red", 
       "stroke-weight": "1", 
       "stroke-width":"3", 
       "fill-opacity":"0.6" 
      } 
     } 
    ] 
} 

Я надеюсь, что это можно установить стиль на отдельных полигонах, а не всю информацию.

ответ

2

Оказывается, можно назначить стиль с помощью function:

// Color Capital letters blue, and lower case letters red. 
// Capital letters are represented in ascii by values less than 91 
map.data.setStyle(function(feature) { 
    var ascii = feature.getProperty('ascii'); 
    var color = ascii > 91 ? 'red' : 'blue'; 
    return { 
     fillColor: color, 
     strokeWeight: 1 
    }; 
}); 
+1

Это помогло мне, спасибо. – mapr

Смежные вопросы