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

如何创建仅显示城市名的OpenStreetMap Leaflet地图

实现仅显示城市名称的OpenStreetMap Leaflet地图

要替换现有MapTiler图层,实现只展示城市名称、隐藏医院/酒店等地标标签的需求,你可以使用基于OpenStreetMap数据的简约样式瓦片服务——这类服务默认仅渲染行政区划标签(城市、国家)和基础地图元素,过滤掉了POI类标注。

修改后的完整代码

// 创建以指定位置为中心、指定缩放级别的地图
const map = L.map("leaflet-map-popup").setView([20.5937, 78.9629], 5);

// 替换为基于OSM的简约瓦片图层
L.tileLayer(
  "https://tiles.stadiamaps.com/tiles/alidade_smooth/{z}/{x}/{y}{r}.png",
  {
    maxZoom: 18,
    attribution: '© OpenStreetMap contributors',
  }
).addTo(map);

核心说明

  • 瓦片服务特性:上述alidade_smooth样式完全基于OpenStreetMap数据,仅保留道路、水系和城市/国家级别的行政区划标签,不会显示医院、酒店等POI地标及对应标签,符合你的需求。
  • 版权规范:所有基于OpenStreetMap的瓦片服务必须保留© OpenStreetMap contributors的版权声明,这是OSM数据的使用要求。
  • 进阶自定义:如果需要更精细化的样式(比如仅显示城市名称+空白底图),可以用Maptiler或类似工具基于OSM数据自定义瓦片样式,生成专属瓦片URL后替换即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 16:52:45