返回顶部
h

historical-map历史地图生成

Generate beautiful vintage-style historical maps from GeoJSON data. Supports multiple projections, color palettes, timelines, compass roses, parchment overlays, and vignette effects. Perfect for history blogs, videos, articles, and educational content.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
102
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

historical-map

历史地图生成器

从GeoJSON数据生成精美的复古风格历史地图。

快速开始

bash

安装依赖


pip install geopandas matplotlib numpy Pillow pyproj shapely

下载历史GeoJSON数据

git clone https://github.com/aourednik/historical-basemaps.git

将world_YYYY.geojson文件复制到./data/目录

生成地图

python generate.py --year 1914 --region europe --output europe_1914.png

功能特性

  • - 历史边界:覆盖公元前10000年至公元2010年(50+时间切片)
  • 多种投影:兰勃特方位等积投影、兰勃特正形圆锥投影、摩尔威德投影、等距圆柱投影
  • 4种配色方案:复古(HOI4风格)、柔和、暗色、卫星
  • 装饰元素:罗盘玫瑰、比例尺、时间轴、图例、海洋标签
  • 后处理:羊皮纸叠加、暗角加深、纸张纹理噪点
  • 可定制:覆盖任意国家颜色、添加自定义事件、替换底图纹理

可用时间切片

来自historical-basemaps的常用年份:

worldbc3000.geojson, worldbc1500.geojson, world_100.geojson
world500.geojson, world1000.geojson, world_1200.geojson
world1400.geojson, world1492.geojson, world_1600.geojson
world1700.geojson, world1783.geojson, world_1815.geojson
world1880.geojson, world1900.geojson, world_1914.geojson
world1920.geojson, world1930.geojson, world_1938.geojson
world1945.geojson, world1960.geojson, world_2000.geojson

使用示例

基础:1914年欧洲

bash python generate.py --year 1914 --region europe --output europe_1914.png

自定义配色的世界地图

bash python generate.py --year 1600 --region world --projection mollweide --palette dark --output world_1600.png

自定义颜色的中国地图

bash python generate.py --year 1400 --region china --palette pastel \ --title MING DYNASTY --title-cn 明朝疆域 --output ming.png

自定义区域(巴尔干半岛)

bash python generate.py --year 1815 --region 18,34,32,48 --output balkans_1815.png

带自定义事件时间轴

创建my_events.json: json [ {year: 1789, label: Revolution, cn: 法国大革命, color: #4169E1}, {year: 1804, label: Empire, cn: 拿破仑称帝, color: #2E5E2E}, {year: 1815, label: Fall, cn: 滑铁卢, color: #8B0000} ]

bash
python generate.py --year 1815 --events my_events.json --output napoleon.png

自定义国家颜色

bash python generate.py --year 1945 --region world \ --title POST-WAR WORLD --title-cn 二战后的世界 \ --palette vintage --output postwar.png

参数说明

参数默认值描述
--year必填历史年份(必须匹配GeoJSON文件)
--region
europe | 区域预设或经度最小值,纬度最小值,经度最大值,纬度最大值 | | --projection | laea | laea, lcc, mollweide, platecarree | | --palette | vintage | vintage, pastel, dark, satellite | | --title | 自动 | 主标题(拉丁/英文) | | --title-cn | 自动 | 中文副标题 | | --data | 自动检测 | GeoJSON文件路径 | | --basemap | 无 | 卫星底图图像路径 | | --parchment | 无 | 羊皮纸纹理图像路径 | | --events | 自动预设 | 事件JSON文件路径 | | --dpi | 300 | 输出分辨率 | | --no-timeline | false | 禁用底部时间轴 | | --no-compass | false | 禁用罗盘玫瑰 | | --no-postprocess | false | 跳过暗角/噪点效果 | | --output | historical_map.png | 输出文件路径 |

区域预设

键名覆盖范围
europe整个欧洲大陆
balkans
巴尔干半岛 | | world | 全球视图 | | asia | 亚洲大陆 | | china | 中国及周边地区 | | mediterranean | 地中海盆地 | | middle_east | 中东地区 | | americas | 北美洲+南美洲 |

配色方案

复古(默认)

HOI4风格的低饱和度军事配色。海洋:深青色。非常适合战争地图。

柔和

浅色、柔和的色彩搭配米白色背景。非常适合教育内容。

暗色

深海军蓝背景搭配金色点缀。具有戏剧性的电影感。

卫星

现代制图风格,线条清晰。专业且中性。

后处理流程

  1. 1. 羊皮纸叠加 — 半透明羊皮纸纹理(透明度=18/255)
  2. 暗角 — 边缘变暗以突出焦点
  3. 纸张纹理 — 微妙的噪点营造旧纸质感
  4. 去饱和度 — 14%的色彩降低以获得复古感

Python API

python
from generate import HistoricalMapGenerator

gen = HistoricalMapGenerator(
datapath=data/world1914.geojson,
basemap_path=textures/satellite.jpg,
parchment_path=textures/parchment.jpg,
)

gen.generate(
year=1914,
region=europe,
projection=laea,
title=EUROPA ANNO DOMINI MCMXIV,
title_cn=第一次世界大战前夜的欧洲,
color_palette=vintage,
dpi=300,
outputpath=mymap.png,
)

数据来源

historical-basemaps by @aourednik。
50+个GeoJSON时间切片,覆盖公元前10000年至公元2010年。

注意:边界精度因数据而异。BORDERPRECISION字段表示准确性(1=高精度,3=近似值)。某些地区(尤其是巴尔干半岛)的相邻领土之间可能存在微小间隙。如需出版级质量的地图,建议手动编辑GeoJSON或使用商业数据。

系统要求

  • - Python 3.9+
  • geopandas >= 0.14
  • matplotlib >= 3.8
  • numpy >= 1.24
  • Pillow >= 10.0
  • pyproj >= 3.6
  • shapely >= 2.0

许可证

MIT

致谢

Lumielle / OpenClaw Agent开发
数据来源:historical-basemaps(CC BY 4.0)

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 historical-map-1775958014 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 historical-map-1775958014 技能

通过命令行安装

skillhub install historical-map-1775958014

下载

⬇ 下载 historical-map v1.0.0(免费)

文件大小: 14.64 KB | 发布时间: 2026-4-13 10:33

v1.0.0 最新 2026-4-13 10:33
Initial release: vintage historical map generator with 4 projections, 4 palettes, decorative elements, post-processing pipeline, CLI and Python API, bilingual README

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部