核心功能
astro-natal-chart 是一款专业级占星本命盘计算与可视化工具,采用NASA JPL DE431星历数据驱动的 Swiss Ephemeris (pyswisseph 2.10.3.2) 作为唯一计算引擎,确保天文精度。支持通过出生日期、时间和地点生成完整的本命星盘分析。
技术架构
采用单一数据源架构:natal_chart_swe.py 负责全部天文计算(行星位置、宫位、相位、逆行状态),draw_wheel.py 仅调用其JSON输出进行渲染,彻底消除图文数据不一致问题。
输出形式
1. 文本输出:完整的行星位置表、十二宫位、主要相位及文字解读
2. 高清图像:5760×2880像素三栏式布局PNG,包含:
- 左栏:本命星盘轮(宫位+行星标记+相位线)
- 中栏:核心数据(日期地点、坐标时区、ASC/MC、行星宫位表、宫头位置)
- 右栏:详细解读(日月上升星座分析、主导元素、星群、逆行行星、十二宫位逐宫解读)
解读维度
- 日月上升三要素性格分析
- 四元素(火土风水)分布与主导元素
- 星群(stelliums)与逆行行星
- 主要相位(合相、对冲、四分、三分、六分等)
- 十二宫位完整解读(宫头星座+宫内行星+生活领域含义)
显著优点
- 天文级精度:基于NASA JPL DE431星历,非简化公式
- 专业可视化:2160×2160等比例双轮设计,元素色标区分,ASC/MC高亮
- 双语完整支持:俄/英双语界面与解读,非机器翻译的本地化内容
- 工程严谨性:单一计算源保证图文一致,JSON中间格式便于扩展
- 字体兼容方案:双字体混排解决Windows下黄道符号与西里尔字母共存难题
局限性与注意事项
- 平台限制:仅Windows x64,需Python 3.14 + MSVC++ Redistributable
- 娱乐性质:文档明确声明非科学方法,不建议用于医疗/财务决策
- 城市数据依赖:内置约50+城市数据库,偏远地区需手动坐标
- 古典占星局限:使用Placidus宫位制,未支持整宫制等其他系统
适合人群
- 占星爱好者与学习者
- 需要快速生成专业星盘图的内容创作者
- 俄/英语双语环境下的占星咨询服务者
- 对可视化精度有要求的星盘打印/展示需求
风险提示
- 依赖捆绑的
.pyd原生二进制文件,存在潜在的供应链安全风险 - 无代码签名,运行时需信任编译来源
- 个人出生数据(精确时间地点)属于敏感信息,输出文件需妥善保管