行运盘API文档
基本信息
| 参数 | 值 |
|---|---|
| Base URL | https://chart.12sign.top |
| 接口URL | /onechart |
| 请求方式 | POST |
| Content-Type | application/json |
接口功能说明、注意事项、通用参数(动态天体配置、恒星、阿拉伯点等)请参考 单盘接口通用参数说明
请求参数
1. 基础参数(必需)
| 参数名 | 类型 | 必选 | 说明 |
|---|---|---|---|
| chart_type | string | 是 | 固定值:"transit" |
| data.datetime | string | 是 | 出生日期时间,格式:YYYY-MM-DD HH:MM:SS |
| data.lat | number | 是 | 出生地纬度 |
| data.lon | number | 是 | 出生地经度 |
| data.tz | number/string | 是 | 出生地时区,如 8 或 "8" 表示UTC+8,支持小数如 8.5 |
请求示例
基本请求
{
"chart_type": "transit",
"data": {
"datetime": "2025-01-15 12:00:00",
"lat": 39.9042,
"lon": 116.4074,
"tz": 8
}
}
返回参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| success | boolean | 请求是否成功 |
| data | object | 星盘数据 |
| data.planets | object | 行星位置数据,包含所有计算的天体(行星、小行星、特殊点、阿拉伯点等) |
| data.houses | object | 宫位数据 |
| data.fixed_stars | object | 恒星位置数据(如果请求了恒星) |
| data.arabic_parts | object | 阿拉伯点数据(如果请求了阿拉伯点,同时也会合并到planets中) |
| data.analysis | object | 详细分析数据(如果 include_analysis=true) |
| data.analysis.config | object | 全局配置信息(包含 orb_scheme, aspect_scheme, fixed_star_orb_scheme) |
| data.analysis.aspects | array | 相位列表,每个相位包含:planet1, planet2, aspect, orb, calculated_orb 等字段 |
| data.analysis.planet_signs | object | 行星星座分析,包含每个行星的星座、度数等信息 |
| data.analysis.planet_houses | object | 行星宫位分析,包含每个行星所在的宫位 |
| data.analysis.element_analysis | object | 元素分析(火土风水分布) |
| data.analysis.quality_analysis | object | 性质分析(基本、固定、变动分布) |
| svg | string | SVG图形数据(如果 include_svg=true) |
Python 调用示例
import requests
# 基本请求
response = requests.post('https://chart.12sign.top/onechart', json={
"chart_type": "transit",
"data": {
"datetime": "1990-06-15 14:30:00",
"lat": 39.9042,
"lon": 116.4074,
"tz": 8
},
"dynamic_planet_config": {
"level": "modern_standard",
"custom_arabic_parts": ["AP0001", "AP0002"]
},
"include_fixed_star": "default",
"fixed_stars_in_svg": "conjunct",
"include_analysis": True,
"include_svg": True,
"chart_style": "standard"
})
result = response.json()
if result['success']:
# 保存SVG
with open('transit_chart.svg', 'w', encoding='utf-8') as f:
f.write(result['svg'])
# 访问数据
planets = result['data']['planets']
fixed_stars = result['data'].get('fixed_stars', {})
arabic_parts = result['data'].get('arabic_parts', {})
analysis = result['data'].get('analysis', {})
print(f"行星数量: {len(planets)}")
print(f"恒星数量: {len(fixed_stars)}")
print(f"阿拉伯点数量: {len(arabic_parts)}")
if analysis:
aspects = analysis.get('aspects', [])
planet_signs = analysis.get('planet_signs', {})
print(f"相位数量: {len(aspects)}")
print(f"行星星座分析: {len(planet_signs)} 个行星")
# 显示主要行星位置
for planet in ['SUN', 'MOON', 'MERCURY', 'VENUS', 'MARS']:
if planet in planet_signs:
sign_info = planet_signs[planet]
print(f"{planet}: {sign_info['sign_name']} {sign_info['degree_in_sign']:.1f}°")
在线测试
请求地址:
https://chart.12sign.top/onechart
请求参数(JSON):
返回结果:
点击"发送请求"后在此显示结果
星盘图:
SVG星盘图将在请求成功后显示在这里