Weather-Sculpt
用真实的 ERA5 气象场"雕刻"出视频、GIF 和声音。
不是动画模拟——是 ECMWF 第五代再分析(ERA5, CC-BY 4.0)的真实大气状态,
经 4 个预调"雕刻"预设渲染成可发布的媒体,并附一条独有的天气声化通道。
不想装任何东西?浏览器 demo:weather-sculpt demo
预设 · Presets
| 预设 | 画面 |
|---|---|
temperature_waves |
2 m 温度波场 |
wind_streamlines |
10 m 风场流线(按风速着色) |
rain_curtain |
6 小时滚动降水雨幕 |
pressure_vortex |
相对涡旋 + 等压线 |
快速开始 · Quickstart
pip install weather-sculpt
from weather_sculpt import render_video, sonify
# 内置迷你样本场(pip 免费层自带, 全 5 变量 / 1° / 7 天)
import os, weather_sculpt
DATA = os.path.join(os.path.dirname(weather_sculpt.__file__), "data", "era5_sample.zarr")
# 一段 60 帧的温度波场 GIF
render_video(DATA, "temperature_waves", "temperature.gif", frames=60, fps=3)
# 把降水"听"出来
sonify(DATA, "tp", "rain.wav", mode="sweep", frames=120)
用你自己的 ERA5 数据(任意 0.25° zarr/netCDF 同构数据集):
from weather_sculpt import open_weather, render_video
ds = open_weather("your/era5.zarr")
render_video(ds, "wind_streamlines", "wind.mp4", frames=120, fps=2)
免费层 vs 完整包 · Free tier vs Ready-to-Run
| 免费层(pip / 本仓库 / demo) | Ready-to-Run 完整包(Gumroad) | |
|---|---|---|
| 代码 | ✅ MIT | ✅ MIT + 商业授权书 |
| 数据 | 迷你样本场 | 全球 0.25° × 7 天 + 中国区域 × 30 天(下好、校验过,zstd) |
| 预设 | ✅ 全部 | ✅ 全部(预调参数) |
| 声化 | ✅ | ✅ |
| 商用 | 需自行遵循 CC-BY 署名并承担取数成本 | 商业授权 + 署名合规 + manifest 校验 |
完整包购买:Weather-Sculpt on Gumroad
数据与署名 · Data & Attribution
ERA5 数据遵循 CC-BY 4.0(ECMWF)。任何再分发须保留署名:
Weather data: ECMWF ERA5 (CC-BY 4.0). Engine: weather-sculpt (roblitz).
文件结构
weather-sculpt/
├── weather_sculpt/
│ ├── fields.py # 场加载 + 涡度/散度/归一化
│ ├── presets.py # 4 个雕刻预设
│ ├── render.py # PNG 序列 / GIF / MP4
│ ├── sonify.py # 天气声化 (WAV)
│ └── data/ # 内置迷你样本场(全 5 变量, 1°, 7 天)
├── examples/
├── scripts/
│ ├── download_era5.py # ERA5 开放数据下载脚本(匿名 S3,免费)
│ ├── make_sample.py # 生成包内样本
│ ├── make_manifest.py # 生成校验和 manifest
│ ├── verify_manifest.py # 买家复算校验
│ └── make_showcase.py # 渲染展示 GIF
├── QUICKSTART.md
├── README.md / MODEL.md
└── LICENSE.md / LICENSE_COMMERCIAL.md
Metadata
Release files for weather-sculpt 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| weather_sculpt-0.1.1.tar.gz | 17.1 MB | Without provenance | Details for weather_sculpt-0.1.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| weather_sculpt-0.1.1-py3-none-any.whl | Python 3 | none | any | Details for weather_sculpt-0.1.1-py3-none-any.whl |
Total release size: 34.1 MB
Release files / weather_sculpt-0.1.1.tar.gz
| Download URL | weather_sculpt-0.1.1.tar.gz |
|---|---|
| Size | 17.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c8df4b8acd80521a7a8af9f1130d68a1afca47a4b41f1ce0f770b78b31411e57
|
|
BLAKE2b-256 checksum How to use checksums |
e6562c34d8508bd0c2a38f78375e79fe99f7e906fc4285cff9bd9f3e0ac451c2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / weather_sculpt-0.1.1-py3-none-any.whl
| Download URL | weather_sculpt-0.1.1-py3-none-any.whl |
|---|---|
| Size | 17.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
231dd3c45827c2c1c26cf7a0c8c7efd5340ce5eb287665b977b7c5b9330b697c
|
|
BLAKE2b-256 checksum How to use checksums |
a98fb71de688a9ca847642f0c1fef97df7896f7f5dd8a95776348c92639b15fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for weather-sculpt 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.