prettymaps:从 OpenStreetMap 创建惊艳的自定义地图

prettymaps:将 OpenStreetMap 数据转化为精美自定义地图

一行代码的地图魔法

创建惊艳地图从未如此简单。使用 prettymaps,只需一行代码即可生成出版级地图:

import prettymaps
prettymaps.plot('Stad van de Zon, Heerhugowaard, Netherlands')

就是这样!该库会自动获取 OpenStreetMap 数据并渲染精美的地图,包含街道、建筑、水体、森林等。

主要特性

  • 10+ 内置预设:从极简到详细艺术风格
  • 完全自定义:控制图层、颜色、宽度和样式
  • 多种输入类型:地址、坐标或自定义 GeoDataFrames
  • 绘图机模式:导出 SVG 文件用于笔式绘图机
  • 多图支持:在一个画布上组合多个区域
  • 山体阴影 & 关键点:高级地形和地标可视化

快速安装

pip install prettymaps

或使用 Google Colab:

!pip install -e "git+https://github.com/marceloprates/prettymaps#egg=prettymaps"

热门预设

# 列出所有可用预设
prettymaps.presets()

# 使用特定预设
prettymaps.plot('Porto Alegre', preset='minimal')

可用预设:defaultminimalmacaotijucabarcelonaheerhugowaard 等。

高级自定义

prettymaps.plot(
    'Praça Ferreira do Amaral, Macau',
    circle=True,
    radius=1100,
    layers={
        'building': {'tags': {'building': True}},
        'water': {'tags': {'natural': ['water', 'bay']}},
        'green': {'tags': {'landuse': 'grass', 'leisure': 'park'}},
    },
    style={
        'background': {'fc': '#F2F4CB'},
        'building': {'palette': ['#FFC857', '#E9724C', '#C5283D']}
    }
)

实际应用

  1. 城市规划:可视化社区布局和基础设施
  2. 生成艺术:创建独特的基于地图的艺术作品
  3. 数据分析:在地理空间背景下叠加自定义数据
  4. 演示文稿:报告和出版物中的专业地图
  5. 绘图机艺术:导出用于 CNC 笔式绘图机

访问原始 GeoDataFrames

plot = prettymaps.plot('Porto Alegre', show=False)
buildings = plot.geodataframes['building']
# 分析 2400+ 建筑足迹,包含完整的 OSM 属性

prettymaps 的独特之处

  • 12.2K GitHub 星标 - 社区广泛采用
  • Hacker News 推荐 - 行业认可
  • AGPL-3.0 许可 - 允许商业使用,但需披露源代码
  • Streamlit 前端 - 交互式网页界面
  • 活跃开发 - 定期更新和新功能

立即开始

安装 prettymaps,几分钟内开始创建精美地图。无论您是数据科学家、制图师还是生成艺术家,prettymaps 都能以最少的代码提供专业结果。

实时演示Google Colab

注意:请始终按照许可要求标注 OpenStreetMap 和 prettymaps 仓库。

原始文章: 查看原文

分享这篇文章