Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

199
Visualizações
vinculación de marcadores a la capa de polígono de coropletas en el folleto

Quiero crear un evento de clic para que las capas de coropletas muestren marcadores dentro de sus coordenadas de polígono. Creé la capa de coropletas usando el complemento del folleto y estoy buscando una manera de mostrar los puntos dentro del polígono, similar a como lo he visto usando el complemento turf -js, la mayoría de los ejemplos que he visto en línea. sin embargo, enlace a la creación de un polígono con los puntos. Los dos archivos que tengo (atributos de polígono por condado y coordenadas de punto) tienen una característica de propiedad similar que podría sustituir por vinculación (ID de condado); sin embargo, no estoy seguro de un método dinámico utilizado para procesar el enlace. Digamos: si tengo más de 100 condados dentro de 1 estado, vinculando los puntos a cada condado en lugar de crear manualmente la colección de características var para cada condado y el conjunto de puntos correspondientes.

Aquí está mi código de coropletas, las coordenadas del polígono para la salida estatal a los límites por condado:

 let plethstate = new L.layerGroup() geojson = L.choropleth(countydata, { valueProperty: "Amount", scale: ["#ffffb2", "#b10026"], steps: 10, mode: "q", style: { color: "#fff", weight: 1, fillOpacity: 0.8 }, onEachFeature(feature, layer) { layer.bindPopup("CountyID: " + feature.properties.IDcounty + "<br>County: " + feature.properties.NAME + "<br># : " + feature.properties.Number); var state = feature.properties.IDcounty.slice(0,2); if (state == '51') layer.addTo(plethstate); } })

Me gustaría hacer referencia a esta capa como una colección de características usando turf Js y encontrar marcadores de puntos dentro de los límites de cada condado, de modo que con un evento onclick() del condado, muestre los marcadores dentro de mi capa de puntos:

 var pts = L.geoJson('/data', { pointToLayer: function (feature){ return new L.circleMarker([feature.geometry.coordinates[1], feature.geometry.coordinates[0]], { radius: getRadius(feature.properties.Amount), fillOpacity:0.8, color: getColor(feature.properties.Name), }) } })

Al hacer clic en la función para vincular el polígono a la capa de puntos:

 $("#mybutton").click(function (event) { var ptsWithin = turf.within(pts.toGeoJSON(), plethstate.toGeoJSON()); console.log(ptsWithin) })

Sin embargo, es posible que no entienda la funcionalidad intrínseca del método turf-js: ¿Está vinculando los puntos a var plethstate como una sola capa? ¿O vincula inherentemente los puntos a su capa de polígono correspondiente (cada condado) dentro del grupo de capas (después de convertir a geoJson)?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Para cualquier persona curiosa, pude vincular marcadores a cada capa de polígono dentro del archivo de datos de coropletas usando este método:

 var group = L.featureGroup(); let plethstate = new L.layerGroup() geojson = L.choropleth(countydata, { valueProperty: "Amount", scale: ["#ffffb2", "#b10026"], steps: 10, mode: "q", style: { color: "#fff", weight: 1, fillOpacity: 0.8 }, onEachFeature(feature, layer) { layer.bindPopup("CountyID: " + feature.properties.IDcounty + "<br>County: " + feature.properties.NAME + "<br># : " + feature.properties.Number); layer.on("click", function (e){ pointsInBuffer = L.geoJSON().addTo(group); var ptswithin = turf.pointsWithinPolygon(pts.toGeoJSON(), layer.toGeoJSON()) console.log(ptswithin) pointsInBuffer.addData(ptswithin); }) var state = feature.properties.IDcounty.slice(0,2); if (state == '51') layer.addTo(plethstate); } })

Tenga en cuenta que la función de clic en el código anterior no habilita los marcadores, pero envía los datos al grupo de características. Para habilitar el grupo de características como una capa opcional, adjunté una casilla de verificación (cuando está marcada, renderiza marcadores al hacer clic y elimina cuando no está marcada). Se agregó un botón opcional para actualizar los marcadores en el grupo de características cuando se hace clic.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda