Questions tagged «leaflet»

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

1
用R消除多边形之间的条缝
有没有一种方法可以消除使用多边形之间的小“条” R?理想的解决方案将创建一个新SpatialPolygonsDataFrame的多边形之间共享边界重合的地方。我对使用R而不是ArcMap或QGIS 的解决方案特别感兴趣。 我也想听听有关为什么首先存在这些差距的解释。 这是我正在处理的空间数据的可重现示例: library(rgdal) library(sp) library(tigris) library(magrittr) library(leaflet) library(gplots) # This project will use WGS 84 projected coordinate system crs_proj <- CRS("+init=epsg:4326") # These are the FIPS codes of the specific block groups in my study area sel <- c("530330079005", "530330079001", "530330079004", "530330085002", "530330085003", "530330086003", "530330087003", "530330085001", "530330090001", …
10 polygon  leaflet  r  tiger  slivers 

1
与Leaflet一起使用的D3.brush()的任何示例吗?
我有一个传单地图,已使用传单覆盖窗格将SVG放置在其上方。我想将D3画笔添加到覆盖窗格中,然后将更新单独的图表。我到处寻找同时D3.brush()和传单示例的任何示例,但似乎找不到任何示例。 我找到的最接近的东西是这个https://github.com/mbostock/d3/issues/1321和这个https://www.mapbox.com/mapbox.js/example/v1.0.0/timeline-scaled-markers/(这是在刷图表而不是在刷地图)。 我想知道是否: 任何人都知道任何例子,或者 任何人都知道这是否可能/合理地直接,或者 如果可能的话,任何人都有关于我可能会遇到的问题的任何提示。
10 leaflet  d3 

1
如何通过Leaflet在GeoJSON图层上添加归因?
我需要在传单地图上使用GeoJSON图层。这是我的代码示例: function onEachFeature(feature, layer) { if (feature.properties && feature.properties.popupContent) { layer.bindPopup(feature.properties.popupContent); } } myGeoJsonLayer = L.geoJson(data, { pointToLayer: function (feature, latlng) { return L.circleMarker(latlng, geojsonMarkerOptions); }, onEachFeature: onEachFeature }); myGeoJsonLayer.addTo(map); TOC.addOverlay(myGeoJsonLayer, "My GeoJSON Layer"); 一切正常。 现在,我想在图层上添加归因,但如何?

3
Javascript弹出窗口中的图表
如何在弹出窗口中显示图表?我使用的是Leaflet JS,它支持raphael插件http://dynmeth.github.com/RaphaelLayer/。是否可以在弹出窗口中创建div?我在考虑http://softwarebyjosh.com/raphy-charts/ 如果使用Leaflet无法实现,那么我只能使用Raphael地图解决方案。 谢谢


4
如何在leaflet.js中更改图层顺序
我希望能够更改传单中图层的顺序。 我尝试实现两个传单插件以更改图层顺序。 首先,我尝试了leaflet-control-orderlayers,它似乎可以工作,但是不支持layerGroups,这是我的提起的bug。 接下来,我尝试了mapbbcode,它确实支持layerGroups,但是似乎不起作用或无法维护。 有人对如何实现此功能有任何建议吗?
10 leaflet 

2
在传单地图中加载矢量图块图层?
我需要在传单地图中加载矢量图块层。 向量图块是有关Mapillary序列的向量图块层(请参见https://a.mapillary.com/#vector-tiles ...),图块URL模式为: https://d2munx5tg0hw47.cloudfront.net/tiles/{z}/{x}/{y}.mapbox 矢量图块使用Mapbox矢量图块格式。 我已经在网上搜索过,但没有找到示例:我已经看到可以使用Mapbox完成此操作,但如果可能的话,我只想使用Leaflet

1
Leaflet JS将GeoJSON形状添加为多边形中的孔
我有一个已经包含geojson的数据集。我可以使用以下代码将其添加到地图中。 L.geoJson(data.geojson).addTo(map); 我明白了 但我想实现这一目标,将周围的区域覆盖起来,我的geojson形状在其中部形成一个孔。 根据传单文档 您还可以通过传递latlngs数组的数组来创建带有孔的多边形,第一个latlngs数组代表外环,其余的latlngs数组代表内部的孔。 所以从理论上说: var scotland = [[60,-13],[60,0],[50,4],[50,-13]]; L.Polygon([scotland,coordinatesOfShapeHole].addTo(map); 我的问题是此函数似乎不像我传入data.geojson或data.geojson.coordinates作为第二个参数(coordinatesOfShapeHole); 有什么方法可以将data.geojson转换为L.Polygon函数满意的格式? 还是用L.geoJson做同样的事情?

3
使用WGS84坐标合并geojson多边形
我有一个带有一些相邻多边形的Geojson文件,我想将它们合并为一个。我知道这是一个经常性的问题,但是我找不到像纬度和经度坐标这样的多边形的信息: { "type": "FeatureCollection", "features": [{ "type": "Feature", "id": "16966", "properties": { "Name": "BEYNES" }, "geometry": { "type": "Polygon", "coordinates": [ [ [1.874862143378, 48.834371283832], [1.8656030688715, 48.831612507285], [1.8515105581603, 48.834338209867], [1.8466221791684, 48.828669687135], [1.8415374906793, 48.828818416443], [1.8392188748285, 48.830163082204], [1.8419058888315, 48.843509743804], [1.8472716401406, 48.849200964455], [1.8375210341485, 48.856814659389], [1.8383984699903, 48.87125874614], [1.8572939822902, 48.871944300476], [1.874663272221, 48.877028568925], [1.8831026195664, 48.874535338148], [1.9127169447188, 48.860849357594], …

1
更改Leaflet点GeoJSON图层上的默认样式?
我需要在Leaflet地图中的点GeoJSON图层上更改样式。 我正在使用以下代码: function onEachFeature(feature, layer) { if (feature.properties && feature.properties.popupContent) { layer.bindPopup(feature.properties.popupContent); } } var myStyle = { "color": "#ff7800", "weight": 5, "opacity": 0.65 }; myGeoJSONLayer = L.geoJson(myGeoJSON, { style: myStyle, onEachFeature: onEachFeature, }); myGeoJSONLayer.addTo(map); 一切正常,但是我的地图上始终有标准的默认蓝色标记。

1
传单中的墨卡托偏差图
我从墨卡托投影页面上的这张 Wikipedia图片中获得启发,并用传单散布。想法是交互式地使您的光标移动到一个大陆上,并且将根据投影对其进行校正。 有关状态描述者,请参见以下JSFiddle; http://jsfiddle.net/cantdutchthis/NrAEL/1/ 我对投影世界有些陌生,尽管演示可以很好地适应纬度。当我比较维基百科上的等角投影和墨卡托投影时,我得到的印象是,当您比较这两个投影时,投影的偏差仅在“ y轴”上。 我得到的印象是由于第一张维基百科图片,我没有校正经度。我想支持这一点,但我不知道实现此目的的最佳方法是什么。 目前,我能够显示墨卡托投影的偏差的方法是每次鼠标移动时都将坐标移动到鼠标光标上。 map.on("mousemove", function(d){ Object.keys(myLayer._layers).map(function(d){ myLayer.removeLayer( myLayer._layers[d] ) }) var plotCoords = []; // green is the coordinate array for the landmass var green = [ [-46.76373672, 82.62796021],... ] for ( i in green ) { // shift the landmass to where the cursor …


1
单张显示英里/公里
Googlemaps通过在左侧底部显示一个带有英里/公里数的小条,向您显示地图上的面积。传单也以某种方式支持吗? 我没有在leafletjs的文档中看到它,但是该库似乎应该支持。
9 leaflet  maps 

3
如何标注GeoJSON多边形?
我正在使用结合了GeoJSON功能的Leaflet。有没有办法标记GeoJSON要素(在本例中为多边形)?它应该从获得标签 feature.properties.name 这是我想在其中插入标签的代码: function style(feature) { return { weight: 2, opacity: 1, color: 'white', dashArray: '3', fillOpacity: 0.7, fillColor: getColor(feature.properties.coloring) }; }

4
如何右键单击Leaflet标记停止事件传播?
我在Leaflet标记中未找到右键单击事件,因此我开始侦听mousedown事件。在解决此事件的方法中,我检查 if (event.originalEvent.button == 2) { do_something(); // now i want to stop propagation of the rightclick return; } 这确实可以通过调用do_something()来实现,但是该事件会传播到地图并显示一个上下文菜单。如何防止事件传播到地图? 这在所有主要(即IE)浏览器中都有效吗?

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.