Leaflet 传单-未加载地图图层
我正试图创建一个根据2010年病例率对各州进行着色的choropleth。我收到错误:Uncaught TypeError:无法读取Object.t.choropleth.n.exports[作为choropleth]处null的属性“features”。这是从geojson读取和提取数据的问题吗Leaflet 传单-未加载地图图层,leaflet,geojson,choropleth,Leaflet,Geojson,Choropleth,我正试图创建一个根据2010年病例率对各州进行着色的choropleth。我收到错误:Uncaught TypeError:无法读取Object.t.choropleth.n.exports[作为choropleth]处null的属性“features”。这是从geojson读取和提取数据的问题吗 var myMap=L.map('map'{ 中间:[39.8283,-98.5795], 缩放:11 }); APIKEY=“pk.eyj1ijoic2nvdhrty2fsaxn0zxixmyis
var myMap=L.map('map'{
中间:[39.8283,-98.5795],
缩放:11
});
APIKEY=“pk.eyj1ijoic2nvdhrty2fsaxn0zxixmyisimeiioijjamlhd2bzmxyju1m3ztcm54n2kxadq2in0.mgtr6lttertipeiqhveiatq”
L.Tillelayer(“https://api.mapbox.com/styles/v1/mapbox/outdoors-v10/tiles/256/{z} /{x}/{y}?访问令牌=pk.eyj1ijoic2nvdhrty2fsaxn0zxixmyisimeioiijjamlhdwd2bzmxyju1m3ztcm54n2kxadq2in0.mgtr6ltrttepiqhveiatq”).addTo(myMap)
var GEOLINK=“state\u data\u modified.geojson”;
var-geojson_0;
d3.json(地理链接,函数(数据){
geojson_0=L.choropleth(数据{
valueProperty:“2010年利率”,
比例:[“白色”、“红色”],
步骤:5,
模式:“q”,
风格:{
颜色:“#fff”,
体重:1,
填充不透明度:.8
},
onEachFeature:功能(功能,图层){
layer.bindPopup(feature.properties.State+“
案例数:
”+feature.properties.cases\u 2010)
}
}).addTo(myMap);
var legend=L.control({position:“bottomright”});
legend.onAdd=函数(){
var div=L.DomUtil.create(“div”,“信息图例”);
var limits=geojson.options.limits;
var colors=geojson.options.colors;
var标签=[];
//添加最小值和最大值
var legendInfo=“案例和费率”+
"" +
“”+限制[0]+“”+
“”+限制[limits.length-1]+“”+
"";
div.innerHTML=legendInfo;
限制。forEach(函数(限制、索引){
标签。推送(“”;
});
div.innerHTML+=“”+labels.join(“”+”
”;
返回div;
};
图例.addTo(myMap);
});代码>
正文{
填充:0;
保证金:0;
}
#地图,
身体
html{
身高:100%;
}
.单张弹出内容{
文本对齐:居中;
}
/*来自传单Choropleth文档的CSS*/
.传奇{
填充:6px 8px;
字体:12px Arial,Helvetica,无衬线;
字体大小:粗体;
颜色:#555;
背景:#fff;
背景:rgba(255,255,255,0.8);
边界半径:5px;
盒影:0.15px rgba(0,0,0,0.2);
}
.legend ul{
填充:0;
保证金:0;
明确:两者皆有;
列表样式类型:无;
}
李传奇{
显示:内联块;
宽度:30px;
高度:22px;
}
.legend.min{
浮动:左;
垫底:5px;
}
.legend.max{
浮动:对;
}
h1{
文本对齐:居中;
}
试纸
对我来说,错误似乎很明显
您正在从本地存储加载您的geojson
:file:///Users...
这是不可能的。如果您有服务器(apache、nginx)或使用github获取原始文件url,则必须使其可以从url访问
您也可以使用此功能:
$.getJSON("your_path/to/state_data.json", function(json) {
console.log(json);
});
谢谢,我有一种感觉,那是因为我试图从本地存储中读取它。github的方式奏效了。