Astro Natal Chart

✨ 专业本命盘计算与高清星图生成

基于瑞士星历表的专业本命盘计算工具,支持行星位置、宫位、相位精确计算与高清可视化输出,提供英俄双语解读,适合占星学习与研究。

收藏
5k
安装
1.2k
版本
4.3.4
CLS 安全扫描中
预计需要 3 分钟...

使用说明

功能概述

astro-natal-chart 是一款专业的占星本命盘计算与可视化工具,基于权威的 Swiss Ephemeris(pyswisseph 2.10.3.2) 星历计算引擎和 NASA JPL DE431 星历数据,提供高精度的行星位置、宫位划分(Placidus 分宫制)及相位分析功能。

核心功能

| 模块 | 说明 |
|------|------|
| **计算引擎** | 瑞士星历表精确计算,误差 < 0.001°;支持逆行检测、精确 Julian Day 转换 |
| **数据输出** | JSON 结构化数据(供下游渲染)+ 文本解读报告 |
| **可视化** | 5760×2880 高分辨率三栏式布局:本命盘轮图 + 核心数据面板 + 详细解读面板 |
| **双语支持** | 英/俄双语界面与解读文本,内置完整占星术语库 |
| **AI 集成** | `--conclusion` 参数支持注入 AI 生成的综合结论 |

技术架构

采用单一数据源架构natal_chart_swe.py 作为唯一计算核心,draw_wheel.py 仅负责渲染,通过 JSON 管道通信,确保文本与图形输出严格一致,消除数据不一致风险。

显著优点

1. 权威计算基础:Swiss Ephemeris 是专业占星软件的行业标准,被 Astro.com、Solar Fire 等主流工具采用
2. 高精度可视化:2160×2160px 双轮图设计,元素配色、相位连线、宫位界线清晰可辨

3. 完善的本地化:内置 Cyrillic 专用字体(Segoe UI),解决占星符号与俄语文本的混排难题

4. Windows 原生支持:捆绑编译好的 .pyd 二进制扩展,无需用户自行编译星历库

局限与注意事项

| 项目 | 说明 |
|------|------|
| **平台限制** | 仅支持 Windows x64(依赖 MSVC++ Redist 2015-2022) |
| **Python 版本** | 强制要求 Python 3.14.x(ABI 绑定) |
| **分宫制** | 仅支持 Placidus,不支持 Koch、Equal 等其他分宫系统 |
| **小行星** | 目前仅计算十大行星,不含凯龙星、谷神星等小行星 |
| **科学性质** | 工具明确标注为"娱乐/教育用途",占星学缺乏科学验证 |

适用人群

  • 占星学学习者与研究者
  • 需要标准化本命盘数据的专业占星师
  • 开发占星相关应用的程序员(JSON API 友好)
  • 对出生星盘可视化有高质量输出需求的用户

安全风险

| 等级 | 描述 |
|------|------|
| 文件系统 | 输出 PNG 与临时文件至工作目录,无沙箱限制 |
| 子进程调用 | `draw_wheel.py` 通过 `subprocess` 调用计算脚本,存在命令注入风险(需校验输入日期/城市格式)|
| 依赖完整性 | 捆绑的 `.pyd` 二进制未提供源代码,信任开发者签名 |
| 网络 | 纯离线工具,无网络通信 |

建议:对 --name--conclusion 参数做长度与字符过滤,避免路径遍历。

Astro Natal Chart 内容

scripts文件夹
手动下载zip · 2.8 MB
draw_wheel.pytext/plain
请选择文件