马克思盘API文档

基本信息

参数 值
Base URL https://chart.12sign.top
接口URL /onechart
请求方式 POST
Content-Type application/json

请求参数

1. 基础参数(必需)

参数名 类型 必选 说明
chart_type string 是 固定值:"marx"
data1.datetime string 是 第一人出生日期时间,格式:YYYY-MM-DD HH:MM:SS
data1.lat number 是 第一人出生地纬度
data1.lon number 是 第一人出生地经度
data1.tz number/string 是 第一人出生地时区,如 8 或 "8" 表示UTC+8,支持小数如 8.5
data2.datetime string 是 第二人出生日期时间,格式:YYYY-MM-DD HH:MM:SS
data2.lat number 是 第二人出生地纬度
data2.lon number 是 第二人出生地经度
data2.tz number/string 是 第二人出生地时区,如 8 或 "8" 表示UTC+8,支持小数如 8.5

请求示例

基本请求

{
    "chart_type": "marx",
    "data1": {
        "datetime": "1990-06-15 14:30:00",
        "lat": 39.9042,
        "lon": 116.4074,
        "tz": 8
    },
    "data2": {
        "datetime": "1992-03-20 08:00:00",
        "lat": 31.2304,
        "lon": 121.4737,
        "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)

返回数据结构说明

  • analysis.config:包含本次计算使用的全局配置(orb_scheme, aspect_scheme, fixed_star_orb_scheme)
  • 相位数据简化:每个相位不再包含 orb_scheme 和 involves_fixed_star 字段,减少冗余
  • 恒星相位识别:通过 planet1 或 planet2 的名称即可判断是否为恒星相位
  • 马克思盘特点:马克思盘接口用于计算两人关系的马克思关系盘,用于分析关系中的心理感受。

Python 调用示例

import requests

# 基本请求
response = requests.post('https://chart.12sign.top/onechart', json={
    "chart_type": "marx",
    "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('natal_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星盘图将在请求成功后显示在这里