Estoy usando el folleto combinado con las características de GeoJSON. ¿Hay alguna forma de etiquetar las características de GeoJSON (en este caso, polígonos)? Debería obtener etiquetas de
feature.properties.name
Este es mi código donde creo que podría insertar la etiqueta:
function style(feature) {
return {
weight: 2,
opacity: 1,
color: 'white',
dashArray: '3',
fillOpacity: 0.7,
fillColor: getColor(feature.properties.coloring)
};
}
javascript
web-mapping
labeling
geojson
leaflet
contraflujo
fuente
fuente
Respuestas:
Necesita saber el formato que el folleto espera usar. RFM. Ejemplo: OpenLayers espera que este formato GeoJSON cree un punto y proporcione algunos atributos personalizados:
Como puede ver, he creado una Geometría (Punto) y le agrego mis atributos. Cuando envío esto a OpenLayers, el resultado encajará en el ejemplo de @ Aragón, usando "color" y "nombre" (como etiqueta) para personalizar el punto en el mapa.
Copie y pegue este ejemplo de GeoJSON en http://json.parser.online.fr/ o use el sitio para probar y validar el suyo.
fuente
return feature.properties.color;
Como puede ver,properties
es unfeature
atributo y tienecolor
como uno de sus atributos. Puede poner lo que quiera en este objeto siguiendo este camino.RFM
es totalmente innecesario para Y la diferencia entre un punto y un polígono es significativa, ya que saber qué geometría usar es exactamente el problema aquíAsí es como lo resolví con polígonos y etiquetas de folleto, para que obtenga una etiqueta flotante en el polígono con su propiedad de nombre.
Suponer:
Entonces:
Sorprendentemente, GeoJson (en realidad EPSG: 4326) y las coordenadas del folleto se intercambian en orden.
fuente
Creo que esta pregunta es sobre openlayers. Si es así, puede usarla para etiquetar;
Espero que te ayude...
fuente
fillColor: "${color}"
lugar de crear una función?