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')
可用预设:default、minimal、macao、tijuca、barcelona、heerhugowaard 等。
高级自定义
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']}
}
)
实际应用
- 城市规划:可视化社区布局和基础设施
- 生成艺术:创建独特的基于地图的艺术作品
- 数据分析:在地理空间背景下叠加自定义数据
- 演示文稿:报告和出版物中的专业地图
- 绘图机艺术:导出用于 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 仓库。
原始文章:
查看原文