最简单的GeoJSON地图脚本

时间:2012-10-25 13:12:51

标签: javascript maps geojson

我以前使用过Polymaps,但有人能指出一些非常简单的脚本,它可以从geojson生成一个没有额外膨胀和库依赖的映射吗?

我有一个带有geojson的country.json文件,想要在没有d3,openLayers或其他库的情况下渲染地图。

1 个答案:

答案 0 :(得分:0)

这不是一个独立的脚本,而是一个库,但我过去曾使用OpenLayers。使用非常简单并与GeoJson配合使用。

他们网站上的examples也很有用。来自GeoJson example


map = new OpenLayers.Map( 'map' );
            layer = new OpenLayers.Layer.WMS( "OpenLayers WMS", 
                    "http://vmap0.tiles.osgeo.org/wms/vmap0",
                    {layers: 'basic'} );
            map.addLayer(layer);
            map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
            var featurecollection = {
              "type": "FeatureCollection", 
              "features": [
                {"geometry": {
                    "type": "GeometryCollection", 
                    "geometries": [
                        {
                            "type": "LineString", 
                            "coordinates": 
                                [[11.0878902207, 45.1602390564], 
                                [15.01953125, 48.1298828125]]
                        }, 
                        {
                            "type": "Polygon", 
                            "coordinates": 
                                [[[11.0878902207, 45.1602390564], 
                                  [14.931640625, 40.9228515625], 
                                  [0.8251953125, 41.0986328125], 
                                  [7.63671875, 48.96484375], 
                                  [11.0878902207, 45.1602390564]]]
                        },
                        {
                            "type":"Point", 
                            "coordinates":[15.87646484375, 44.1748046875]
                        }
                    ]
                }, 
                "type": "Feature", 
                "properties": {}}
              ]
           };
           var geojson_format = new OpenLayers.Format.GeoJSON();
           var vector_layer = new OpenLayers.Layer.Vector(); 
           map.addLayer(vector_layer);
           vector_layer.addFeatures(geojson_format.read(featurecollection));