prettymaps

输入地名,一键生成艺术感地图海报

prettymaps 是一个基于 Python 的开源工具,用于从 OpenStreetMap 数据绘制美观的地图。它利用 osmnx 获取真实地理数据,结合 matplotlib 和 shapely 进行图形渲染,能够快速生成风格化、艺术感强的城市街区、道路和建筑地图。用户只需提供地点名称或坐标,即可自动下载数据并输出高颜值的矢量地图,适合用于海报、插画、文创产品等视觉设计场景。核心能力包括:支持多种地图样式(如复古、极简、水彩)、可自定义颜色和元素(建筑、道路、水域、绿地)、输出高分辨率 PNG 或 SVG 图片。它解决了非专业设计师难以制作精美地图的问题,让普通人也能轻松创作出具有艺术价值的地理图形。

开源 free 设计创意
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 14252
维护状态 维护中
是否开源 是
定价模式 free

项目数据

分类设计创意
开发团队marceloprates
所属国家
定价模式free
价格说明开源项目,基于AGPL-3.0许可证,可自由使用和部署,无付费版本。
访问状态
是否开源是
开源协议AGPL-3.0
主要语言Python
技术栈/模型cartography,generative-art,jupyter-notebook,maps,matplotlib,openstreetmap,python
GitHub 星标★ 14252
30天Star增速
HF 下载量
上线时间2021-03-05 00:00:00
最近更新2026-09-22 00:00:00
维护状态维护中
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数7

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 6 步

环境要求

  • Python 3.11 或更高版本
  • 可用的 pip 包管理工具
  • 已安装 Git(Colab 方式安装时需要)
  • 运行前端需安装 streamlit
  • 运行教程需安装 marimo(已包含在 requirements.txt 中)

安装与启动步骤

  1. 1确认 Python 版本

    prettymaps 要求 Python 3.11+,先确认本机 Python 版本满足要求,否则升级后再安装。

    python --version
  2. 2安装 prettymaps

    使用 pip 从 PyPI 安装 prettymaps 库,这是本机安装的官方方式。

    pip install prettymaps
  3. 3Colab 方式安装

    在 Google Colaboratory 中改用仓库源码安装,单元里命令需带感叹号,装完必须重启运行时。

    pip install -e "git+https://github.com/marceloprates/prettymaps#egg=prettymaps"
  4. 4重启 Colab 运行时

    Colab 安装完成后,通过 Runtime -> Restart Runtime 重启运行时,再导入 prettymaps,否则可能导入失败。

  5. 5运行前端应用

    先进入 prettymaps 仓库目录,再执行 streamlit 命令启动前端,README 使用仓库内的 app.py。

    streamlit run app.py
  6. 6安装 marimo 教程

    marimo 已列在 requirements.txt 中,若要本地跑教程需额外安装。

    pip install marimo

如何确认成功

执行 import prettymaps 无报错;运行 streamlit run app.py 后浏览器能打开它输出的本地地址页面。

常见问题

Q:安装后 import prettymaps 报错怎么办?

A:若是在 Colab 上用源码方式安装,需先按 README 提示重启运行时(Runtime -> Restart Runtime)再导入。

Q:前端应用怎么启动?

A:进入 prettymaps 仓库目录后执行 streamlit run app.py,README 未给出端口,按终端输出提示访问本地地址。

Q:可以商用吗?

A:可以。项目采用 AGPL v3.0 许可,允许商业使用、分发和修改,但必须披露源码并保留许可证与版权声明。

Q:生成的地图能去掉署名吗?

A:不能。README 明确要求保留图上标注的仓库和 OpenStreetMap 署名信息,这是 OSM 许可证的强制要求。

注意事项

  • 必须保留图中对 prettymaps 仓库与 OpenStreetMap 的署名信息。
  • 项目许可证为 GNU AGPL v3.0,修改分发时需公开源码并保留声明。
  • README 未提供命令行绘图接口示例,绘图请在 Python 代码或 streamlit 前端中操作。
  • 作者声明反对 NFT 用途,使用时请留意相关说明。

核心亮点

  • 基于真实 OpenStreetMap 数据,地图准确且细节丰富
  • 提供多种预设风格和高度自定义选项,满足不同审美需求
  • 输出矢量格式,可无损缩放,适合印刷和高质量展示

不足之处

  • 依赖外部数据源,网络不稳定时下载可能失败
  • 文档和示例相对有限,高级定制需要阅读源码

适用场景

  • 制作城市主题的装饰画或海报
  • 为旅行手账或博客生成个性化地图插画
  • 用于文创产品设计,如明信片、手机壳图案

替代项目

OSMnx、Folium、MapLibre GL JS

项目介绍

prettymaps 是计算机视觉领域的开源项目,由 marceloprates 开发,2021 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(14,252)位列前 4%,在计算机视觉分类的 447 个项目里位列前 4%。

近 41 天,它的 GitHub 星标从 12,313 增加到 14,252,净增 1,939。

项目仍在小幅维护中,最近一次代码更新于 2026-09-22。基于AGPL-3.0许可证,可自由使用和部署,无付费版本。

它主要面向的使用场景是:制作城市主题的装饰画或海报。同类可对比的替代方案包括 OSMnx、Folium、MapLibre GL JS。

上一篇:galaxy-explorer

下一篇:PGS

同类项目推荐

modlens 开源

给纯文本编码代理装上眼睛,粘贴图片即刻获得结构化视觉证据。

The first vision plugin for DeepSeek Harness, and the vision bridge for every text-o···

★ 4019 2026-08-19
opencv 开源

开箱即用的视觉算法库,搞定图像视频处理与识别

Open Source Computer Vision Library

★ 90930 2026-08-10
OpenCVTutorials 开源

中文 OpenCV 教程,从入门到实战,边看边跑代码

OpenCV-Python4.1 中文文档

★ 1430 2026-08-20
DEIMv2 开源

用DINOv3做实时检测,又快又准,直接落地。

[DEIMv2] Real Time Object Detection Meets DINOv3

★ 2046 2026-08-14