Questions tagged «leaflet»

用于移动友好的交互式地图的开源JavaScript库

1
如何将颜色样式复制到图层的属性表中的颜色列?
我在QGIS中有一个多边形图层,已为每个多边形应用了随机的颜色样式。在“图层属性->样式”下,我选择了“分类样式”,然后生成了一个随机的颜色渐变。我在图层表中添加了颜色列。有没有一种方法可以自动将样式中分配的颜色以“#ff0000”形式复制到每个多边形的颜色列中。 最终,我想将其导出为GeoJSON图层,并将其导入到传单地图中。颜色列将在传单中设置颜色。
15 qgis  leaflet  pyqgis  style 

2
传单以错误的顺序渲染TileMill瓷砖
我很困惑,很多搜索都没有帮助。 我处于最终将是具有三个栅格层和三个标记层的地图的第一步(带有在栅格及其关联数据之间切换的控件,以及用于数据的弹出窗口/工具提示),但我不能获取Tilemill瓷砖以正确渲染。(我在QGIS中创建了栅格,然后通过GDAL对栅格进行着色和重新投影,然后将其放入TileMill。) 智慧: 在Chrome中。这是Safari: 这是代码,对我来说似乎是无害的(此时,我已经注释掉了除了磁贴之外的所有内容,所以这就是我所包含的全部内容): <html> <head> <title> - Leaflet demo</title> <script type='text/javascript' src="http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.js"></script> <style type='text/css'> html, body{ width:100%; height: 100%, margin:0; padding:0; } #map{ width:700px; height:600px } img {margin:0px;padding:0px}; </style> <script type='text/javascript'>//<![CDATA[ window.onload=function(){ //one base layer on map var map = new L.Map( "map" ).setView([38.173,-94.384],5); L.tileLayer('http://a.tiles.mapbox.com/v3/mtgmediagroup.beef2013/{z}/{x}/{y}.png', { attribution: 'Dani …

2
在传单地图上触发点击事件?
是否可以在传单地图上的特定纬度/经度处发生点击事件? 我想显示一个弹出窗口,该弹出窗口与特定位置的点关联。 我曾尝试的几种组合map.fireEvent('click', latLon)并map.fire('click', latLon),但我无法找到描述这种方法的例子或引用。这是可以做的事情吗? 我尝试过(并且可行)的一种方法是在传单层中标识对象并使用触发click事件layer[id].fireEvent('click')。但是,这需要我知道对象ID,并且我希望能够仅使用纬度/经度来触发此点击。 我想在单击的位置打开一个弹出窗口,并且我不想在此位置添加标记或添加新的弹出窗口。我想做的是在已经存在某点的特定经纬度上触发click事件,并触发已经存在的弹出窗口。
15 leaflet 

4
正在寻找Google StreetView引擎的开源替代品?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 4个月前关闭。 这个问题的答案是社区的努力。编辑现有答案以改善此职位。它目前不接受新的答案或互动。 我正在寻找使用Leaflet或OpenLayers创建一个开源javascript应用程序。 有什么方法可以将全景图(类似于Google的StreetView)实现到其中一个或任何其他开放API中吗? 我的全景视图将根据个人照片定制,因此我无需从现有服务中获取全景图像。 我了解可以将Google StreetView集成到非Google应用中,但是有没有可以在不使用任何Google API的情况下为我提供类似功能的功能?

1
传单:如何使用removeLayer?
这让我发疯。请参见《 Leaflet》教程,以向地图添加图层控件: L.Icon.Default.imagePath = "Scripts/images"; var mapUrl = 'http://{s}.tile.openstreetmap.se/hydda/full/{z}/{x}/{y}.png'; var secondMap = 'http://{s}.tile.osm.org/{z}/{x}/{y}.png'; var littleton = L.marker([39.61, -105.02]).bindPopup('This is Littleton, CO.'), denver = L.marker([39.74, -104.99]).bindPopup('This is Denver, CO.'), aurora = L.marker([39.73, -104.8]).bindPopup('This is Aurora, CO.'), golden = L.marker([39.77, -105.23]).bindPopup('This is Golden, CO.'); var cities = L.layerGroup([littleton, denver, aurora, golden]); var …


2
传单geojson坐标问题
我刚刚开始玩leflet / geojson。但是我的坐标没有正确显示,我也不知道发生了什么。 我的坐标是:52.23943, 4.97599。它们可以正常使用该setView功能。 var map = L.map('leaflet_map').setView([52.23943, 4.97599], 15); 但是,使用geojasonFeature,它们是“投影”的,在索马里以东。 var geojsonFeature = { "type": "Feature", "properties": { "name": "Coors Field", "amenity": "Baseball Stadium", "popupContent": "This is where the Rockies play!" }, "geometry": { "type": "Point", "coordinates": [52.23943, 4.97599] } }; var myLayer = L.geoJson().addTo(map); myLayer.addData(geojsonFeature).bindPopup("I am a …
14 geojson  leaflet 

2
如何在世界范围内制作折线包装?
我正在使用传单地图来创建环球挑战的表示。我想添加一条折线,该折线从东京向东行驶,然后在地图上出现在南美洲的西部-但我得到一条沿相反方向与地图交叉的线(请参见黄线)。 我认为这可能与日期线和/或坐标系有关,但在细节上有些粗略。谁能解释我需要做些什么才能使它起作用?我正在使用美国国家航空航天局的bluemarble投影: var bluemarble = new L.TileLayer.WMS("http://demo.opengeo.org/geoserver/wms", { layers: 'bluemarble', attribution: "Data © NASA Blue Marble, image service by OpenGeo", minZoom: 2, maxZoom: 5 });


4
更改Leaflet标记上的弹出位置?
我想在Leaflet的标记图标底部打开一个弹出窗口。 我的代码: var mymap = L.map('mapid').setView([51.505, -0.09], 13); L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token=pk.eyJ1IjoibWFwYm94IiwiYSI6ImNpandmbXliNDBjZWd2M2x6bDk3c2ZtOTkifQ._QA7i5Mpkd_m30IGElHziw', { maxZoom: 18, attribution: 'Map data © <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, ' + '<a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, ' + 'Imagery © <a href="http://mapbox.com">Mapbox</a>', id: 'mapbox.streets' }).addTo(mymap); var lati = 51.51; var longi = -0.09; var popupLocation1 = new L.LatLng(lati, longi); var popupContent1 = 'This …
14 leaflet  popup 

3
如何使用Leaflet有效显示大量数据集的一部分?
我一直看到非GIS Web开发人员遇到此问题,而且我不确定解决方案是什么。 有一些包含数千个项目的数据集。 我们希望向用户显示地图,其中可见的子集显示为交互式,可单击的元素。 有什么方法可以做到这一点? 我可以想到这些,但是它们并不令人满意,所以我想知道还有什么: 将所有数据存储在GeoJSON文件中,将其传输到浏览器,然后让Leaflet显示它。问题:不适用于大型数据集。TopoJSON稍微提高了限制。这也会在页面加载时造成很大的延迟。 使用Mapbox,将所有数据存储在Mapbox的交互式图层中,然后使用Mapbox.js进行显示。效果不错,但要花钱,而且您不能自己托管它。 使用GeoServer访问PostGIS数据库,使用WFS-geojson传单插件从那里访问数据。它可能可以工作,但是似乎不再维护WFS-geojson Leaflet插件。 使用CartoDB,将所有数据存储在CartoDB表中,然后使用CartoDB.js进行显示。效果很好,但价格可能非常昂贵。可以自己托管它,但安装CartoDB并非易事。 所有这些使我认为我必须缺少一些更好的,自由的方法。它是什么? 编辑 也许我太容易注销了WFS-geojson插件。有一个叉子仍然可见一些活动(4个月前):https : //github.com/johanlahti/azgs-leaflet

3
根据其他值(例如高度,速度,
我想在Leaflet地图上绘制GPX轨道。折线不应该只有一种颜色,但我想显示某些值,例如海拔,速度,心率,温度,节奏,坡度用颜色编码。当然,一次只能看到一个值。 这些值将与L.LatLng(例如)存储在一个meta: {ele: 298, hr: 155}对象中。 我是Leaflet的新手,尤其关注寻找一种有效的方法来完成此任务。首先想到的是创建数百或数千条折线,每种折线都具有特殊的颜色。但这听起来对内存和cpu非常贪婪。 有任何想法吗? 我的意思是一个例子,可以在这里查看
13 leaflet 

1
从PostGIS生成热图
我在PostGIS数据库中有GIS数据,并想生成一个密度图并将其显示在Leaflet / Google Maps上。 问题:在不将地图视点内的所有(百万)数据点传输到“ Leaflet / Gmaps”地图的情况下,这样做的推荐/典型方法是什么?除非可以通过CLI等实现自动化,否则无需用户干预(即,将数据导入ArcGIS以生成地图)。 当前使用Postgresql / PostGIS作为空间数据库,并在浏览器上使用Leaflet。

2
单张交互式地图应用程序示例[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 2年前关闭。 我想开发一个简单的地图应用程序。用户可以在其中数字化线,多边形和点并赋予要素属性。然后将属性存储在数据库中,以供以后评估。 有没有人使用传单库看到过这样的应用程序?
13 leaflet 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.