javascript - 在 html 中绘制 geojson 点

标签 javascript html leaflet geojson

我正在创建一个类似于此处示例的网络 map example ,但是用我的数据。

我的 geojson 点不会像示例那样显示,这是我的 geojson 文件 points.geojson 的样子:

    {
"type": "FeatureCollection",
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
"features": [
{ "type": "Feature", "properties": { "RENTAL_ID": 146057249, "CUSTOMER_I": 2256099, "LOCATION": "Boston", "VEHICLE_VI": "FHB 1675", "START_DATE": "2017\/03\/1 00:03:00", "END_DATE_L": "2017\/03\/1 00:10:00", "END_LATITU": 30.22478, "END_LONGIT": -97.72464, "DISTANCE": 5, "DURATION": 7, "DURATION_P": 0, "DURATION_D": 7, "SERVICE_DR": 0, "VEHICLE_TY": "HW 2.0" }, "geometry": { "type": "Point", "coordinates": [ 42.355672, -71.058712 ] } },
{ "type": "Feature", "properties": { "RENTAL_ID": 146057187, "CUSTOMER_I": 2435897, "LOCATION": "Boston", "VEHICLE_VI": "JHD 8492", "START_DATE": "2017\/03\/1 00:00:00", "END_DATE_L": "2017\/03\/1 00:19:00", "END_LATITU": 30.25766855, "END_LONGIT": -97.7383573, "DISTANCE": 13, "DURATION": 19, "DURATION_P": 0, "DURATION_D": 19, "SERVICE_DR": 0, "VEHICLE_TY": "B Class" }, "geometry": { "type": "Point", "coordinates": [ 42.361507, -71.090126 ] } }
]
}

这是我编写的代码:

<html>
<head>
    <title>A Leaflet map!</title>
    <link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css"/>
    <script src="http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.js"></script>
    <script src="jquery-2.1.1.min.js"></script>
    <style>
        #map{ height: 100% }
    </style>
</head>
<body>

    <div id="map"></div>

    <script>

  // initialize the map
    var map = L.map('map').setView([42.35, -71.09], 13);

  // load a tile layer
    L.tileLayer('http://tiles.mapc.org/basemap/{z}/{x}/{y}.png',
    {
        attribution: 'Tiles by <a href="http://mapc.org">MAPC</a>, Data by <a href="http://mass.gov/mgis">MassGIS</a>',
        maxZoom: 100,
        minZoom: 9
    }).addTo(map);

  // load GeoJSON from an external file
    $.getJSON("point.geojson",function(data){
    // add GeoJSON layer to the map once the file is loaded
        L.geoJson(data).addTo(map);
    });

    </script>
</body>
</html>

为什么我的积分没有显示?

最佳答案

我想说你的观点确实出现了,但没有出现在你期望的地方。

GeoJSON 格式要求坐标的顺序为[经度,纬度]。 Leaflet 然后在内部反转这个顺序,因为它使用 [latitude, longitude]

但是您仍然需要提供符合 GeoJSON 的数据。

关于javascript - 在 html 中绘制 geojson 点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43878889/

相关文章:

javascript - 将 html 元素定义为必需的输入

html - 如何忽略父元素的填充

HTML - 基于滚动的位置页脚

dictionary - 如何通过单击传单 map 获取瓷砖的 X Y Z 坐标

polygon - 如何检测传单中的多边形是否重叠

javascript - 在 String.split() 中使用捕获组

javascript - 使用 async/await 有什么好处?

javascript - 使用 javascript/jquery 从字符串中获取整数值

javascript - Angular 7 radio [attr.value] 破坏了 [ngModel] 功能

google-maps - 如何使用传单显示 "Google API directions"折线?