Показывает все дороги выбранного города на одной карте, используя данные OpenStreetMap прямо в браузере.
originalankur/maptoposter
Консольная утилита на Python для создания минималистичных постеров с картами городов на основе данных OpenStreetMap и настраиваемыми цветовыми темами.
- Звёзды
- 14,223
- Форки
- 1,256
- Открытые issues
- 61
- Последний коммит
- 2 месяца назад
Что это?
City Map Poster Generator принимает название города и страны, определяет координаты и загружает данные об улицах, водоёмах и парках из OpenStreetMap с помощью OSMnx. Затем утилита визуализирует карту в matplotlib и сохраняет её в виде постера PNG с названием города и страны, координатами и выбранной цветовой темой.
В комплект входят 17 готовых тем, заданных в JSON-файлах. Можно добавлять собственные темы, создав JSON-файл с цветами фона, водоёмов, парков и типов дорог. Радиус карты, размеры изображения в дюймах и координаты центра задаются через командную строку. Названия городов и стран на языках с нелатинской письменностью можно отображать с помощью Google Fonts: шрифты скачиваются и сохраняются в локальном кеше.
Проект предназначен для тех, кто хочет создавать с помощью кода декоративные принты или обои с изображением города. В нём также есть краткое руководство для контрибьюторов с описанием процесса визуализации — для тех, кто хочет расширить возможности проекта.
Ключевые возможности
- 01Создаёт постеры для любого города по названию или по заданным широте и долготе.
- 02В комплект входят 17 цветовых тем; также можно добавлять собственные темы через JSON-файлы.
- 03Позволяет настраивать радиус карты, ширину и высоту постера в дюймах, а также разрешение изображения.
- 04Отображает названия городов и стран на разных языках с помощью Google Fonts, в том числе на японском, корейском, арабском и тайском.
- 05За один запуск может создать изображения одного города во всех темах.
Сценарии использования
- Создание декоративного принта с изображением родного города или места путешествия.
- Подготовка обоев для телефона или компьютера и графики для Instagram на основе карт городов.
- Создание картин с картами формата A4 или крупнее для интерьера или в подарок.
- Эксперименты с визуализацией в matplotlib и OSMnx: можно менять темы или код слоёв карты.
Быстрый старт
- 1
Установите uv (рекомендуется), затем запустите скрипт — зависимости установятся автоматически
uv run ./create_map_poster.py --city "Paris" --country "France" - 2
Или установите с помощью pip и виртуального окружения
pip install -r requirements.txt - 3
Создайте постер с помощью pip и venv
python create_map_poster.py --city "Paris" --country "France"
Что важно знать
- Для геокодирования, получения данных OpenStreetMap и загрузки Google Fonts требуется подключение к интернету.
- При больших расстояниях или крупных размерах печати генерация может быть медленной и ресурсоёмкой.
Темы
Частые вопросы
- Что такое maptoposter?
- Консольная утилита на Python для создания минималистичных постеров с картами городов на основе данных OpenStreetMap и настраиваемыми цветовыми темами. City Map Poster Generator принимает название города и страны, определяет координаты и загружает данные об улицах, водоёмах и парках из OpenStreetMap с помощью OSMnx. Затем утилита визуализирует карту в matplotlib и сохраняет её в виде постера PNG с названием города и страны, координатами и выбранной цветовой темой.
- maptoposter можно использовать бесплатно? Какая у него лицензия?
- maptoposter распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- maptoposter всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в maptoposter — 6 авг. 2026 г..
- Для чего можно использовать maptoposter?
- Создание декоративного принта с изображением родного города или места путешествия. Подготовка обоев для телефона или компьютера и графики для Instagram на основе карт городов. Создание картин с картами формата A4 или крупнее для интерьера или в подарок. Эксперименты с визуализацией в matplotlib и OSMnx: можно менять темы или код слоёв карты.
- Как установить maptoposter?
- Установите uv (рекомендуется), затем запустите скрипт — зависимости установятся автоматически: uv run ./create_map_poster.py --city "Paris" --country "France" Или установите с помощью pip и виртуального окружения: pip install -r requirements.txt Создайте постер с помощью pip и venv: python create_map_poster.py --city "Paris" --country "France"
- Где скачать maptoposter?
- Исходный код и инструкции по установке — на GitHub: https://github.com/originalankur/maptoposter
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Apache Superset — веб-приложение для self-service бизнес-аналитики: исследуйте данные, создавайте графики и дашборды, выполняйте SQL-запросы к разным базам данных.
Полноценная замена Jupyter с AI-агентом, форматом ноутбуков `.deepnote` на YAML и блочным редактором для Python, R и SQL.
CLI для построения диаграмм в терминале (ASCII, спарклайны, полосы, столбцы, тепловые карты, braille и SVG) по обычному тексту с числами.
Терминальная утилита для просмотра основных данных по акциям A-share и ASCII-графика свечей с объёмом на основе данных AKShare.
Инструмент для удаления фона с изображений: доступен как CLI, библиотека Python, HTTP-сервер или Docker-контейнер.