我正在尝试使用CSV文件使用mapbox和leaflet在地图上显示标记。我在mapbox文档中找到了一个示例,我试图使用相同的示例,我刚刚更改了CSV文件,但它没有在地图上显示标记。我刚刚开始使用地图框,所以拼命寻找帮助。
我的CSV文件看起来像这样
值,FacTy,经纬度
1,112,42.27426,-83.365717
2,113,42.274082,-83.3623
3,30,42.337196,-83.487672
这是我的代码片段
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>Loading markers from CSV</title>
<meta name='viewport' content='initial-scale=1,maximum-scale=1,user-scalable=no' />
<script src='https://api.tiles.mapbox.com/mapbox.js/v1.6.4/mapbox.js'></script>
<link href='https://api.tiles.mapbox.com/mapbox.js/v1.6.4/mapbox.css' rel='stylesheet' />
<style>
body { margin:0; padding:0; }
#map { position:absolute; top:0; bottom:0; width:100%; }
</style>
</head>
<body>
<script src='https://api.tiles.mapbox.com/mapbox.js/plugins/leaflet-omnivore/v0.2.0/leaflet-omnivore.min.js'></script>
<div id='map'></div>
<script>
var map = L.mapbox.map('map', 'examples.map-i86nkdio')
.setView([42.274082, -83.362300], 8);
omnivore.csv('latlon.csv',null,L.mapbox.featureLayer()).addTo(map);
</script>
</body>
</html>
答案 0 :(得分:0)
您似乎在第一行数据之前错过了换行符。这是a fixed example。
Value,FacTy,Latitude,Longitude 1,112,42.27426,-83.365717
2,113,42.274082,-83.3623
3,30,42.337196,-83.487672
应该是
Value,FacTy,Latitude,Longitude
1,112,42.27426,-83.365717
2,113,42.274082,-83.3623
3,30,42.337196,-83.487672
答案 1 :(得分:0)
我和你有同样的问题,然后意识到这是数据的问题。要在控制台上记录这些错误,您必须使用:
omnivore.csv('your_file.csv', null, L.mapbox.featureLayer()).addTo(map)
.on('error', function(error) {
console.log(error);
});
它会告诉你哪条线路无效,例如无效的纬线或长线。 More info。 希望这有帮助!