Leaflet 将choropleth图层添加到传单地图

Leaflet 将choropleth图层添加到传单地图,leaflet,geojson,choropleth,Leaflet,Geojson,Choropleth,正在尝试构建传单地图。目标是使用Choropleth在地图上为每个国家放置平均点。活页夹很管用。但由于某些原因,它并没有像预期的那样显示国家的边界,而只是简单的标记。这是我不想要的 var myMap = L.map("map", { center: [40.7128, -74.0059], zoom: 2.5 }); // Adding tile layer L.tileLayer( "https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y

正在尝试构建传单地图。目标是使用Choropleth在地图上为每个国家放置平均点。活页夹很管用。但由于某些原因,它并没有像预期的那样显示国家的边界,而只是简单的标记。这是我不想要的

var myMap = L.map("map", {
  center: [40.7128, -74.0059],
  zoom: 2.5
});

// Adding tile layer
L.tileLayer(
  "https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}",
  {
    attribution:
      'Map data &copy; <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="https://www.mapbox.com/">Mapbox</a>',
    maxZoom: 18,
    id: "mapbox.streets",
    accessToken: API_KEY
  }
).addTo(myMap);

var geojson;

// Grab the data with d3
d3.json("static/js/wine.json").then(function(data) {
  // This should place borders for the countries
   L.geoJson(data).addTo(myMap);
  // Create a new choropleth layer
  geojson = L.choropleth(data, {
    // Define what  property in the features to use
    valueProperty: "points",

    // Set color scale
    scale: ["#ffffb2", "#b10026"],

    // Number of breaks in step range
    steps: 10,

    // q for quartile, e for equidistant, k for k-means
    mode: "q",
    style: {
      // Border color
      color: "#fff",
      weight: 1,
      fillOpacity: 0.8
    },

    // Binding a pop-up to each layer
    onEachFeature: function(feature, layer) {
      layer.bindPopup(
        feature.properties.country +
          ", " +
          feature.properties.points+
          "<br>Median Price per bottle of wine:<br>" +
          "$" +
          feature.properties.price
      );
    }
  }).addTo(myMap);

});
var myMap=L.map(“map”{
中间:[40.7128,-74.0059],
缩放:2.5
});
//添加瓷砖层
蒂莱耶(
"https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}“,
{
归属:
“地图数据©;贡献者,图像©”,
maxZoom:18,
id:“地图盒。街道”,
accessToken:API_密钥
}
).addTo(myMap);
var-geojson;
//用d3抓取数据
d3.json(“static/js/wine.json”)。然后(函数(数据){
//这应该为两国划定边界
L.geoJson(data).addTo(myMap);
//创建新的choropleth层
geojson=L.choropleth(数据{
//定义要在要素中使用的特性
valueProperty:“点数”,
//设置色标
比例:[“#ffffb2”、“#b10026”],
//步长范围内的中断数
步骤:10,
//q表示四分位数,e表示等距,k表示k-均值
模式:“q”,
风格:{
//边框颜色
颜色:“fff”,
体重:1,
填充不透明度:0.8
},
//将弹出窗口绑定到每个层
onEachFeature:功能(功能,图层){
图层绑定弹出窗口(
国家+
", " +
feature.properties.points+
“
每瓶葡萄酒的中间价:
”+ "$" + 特性、特性、价格 ); } }).addTo(myMap); });
基于您的示例数据,您只需修改GeoJSON数据以指定“多边形”类型的几何图形(带有坐标数组),而不是当前的“点”类型的几何图形(默认情况下,传单将其呈现为简单标记)。

可能的重复项不是重复项。我在地图上显示的数据不是我想要的方式。它显示标记,我需要颜色。谢谢!非常感谢。