You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改leafpm包添加到Leaflet地图对象的默认蓝色为红色?

修改leafpm绘制对象的默认颜色

要把leafpm新增图形的默认颜色从蓝色改成红色,关键是在pmDrawOptions中配置pathOptions参数——这个参数控制绘制完成后最终图形的样式,你之前设置的templineStyle只是绘制过程中的临时辅助线条样式。

修改后的代码如下:

pacman::p_load(dplyr, leafpm, leaflet)
leaflet() %>%
  addTiles() %>%
  addPmToolbar(
    toolbarOptions = pmToolbarOptions(
      drawMarker = FALSE, drawPolygon = F, drawRectangle = F, drawCircle = F, 
      position = "topright", editMode = TRUE, cutPolygon = F, removalMode = T
    ),
    drawOptions = pmDrawOptions(
      snappable = T, allowSelfIntersection = T, finishOn = "dblclick",
      templineStyle = list(color = "red"),
      # 新增配置:设置最终图形的默认样式
      pathOptions = list(color = "red", weight = 2)
    ),
    editOptions = pmEditOptions(preventMarkerRemoval = F, draggable = FALSE),
    cutOptions = pmCutOptions(snappable = FALSE, allowSelfIntersection = FALSE)
  )

补充说明:

  • pathOptions里的color指定图形边框颜色,weight可调整线条粗细(可选)
  • 如果需要修改多边形的填充颜色,可在pathOptions中添加fillColor = "red"、fillOpacity = 0.3这类参数
  • 该设置对所有通过leafpm工具栏新增的图形生效,无需额外指定targetLayerId或targetGroup

内容的提问来源于stack exchange,提问作者Beni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 05:48:06