Element & Quality Distribution #
Kerykeion calculates a balance report for Elements (Fire/Earth/Air/Water) and Qualities (Cardinal/Fixed/Mutable) for every chart. You can choose between a Weighted method (based on planetary importance) or a Pure Count method.
Usage #
Configure the distribution method when creating chart data.
from kerykeion import AstrologicalSubjectFactory, ChartDataFactory
subject = AstrologicalSubjectFactory.from_birth_data("Alice", 1990, 6, 15, 12, 0, "London", "GB")
# Default: Weighted
data = ChartDataFactory.create_natal_chart_data(subject)
print(f"Fire: {data.element_distribution.fire_percentage}%")
# Option: Pure Count (1 point per planet)
pure_data = ChartDataFactory.create_natal_chart_data(
subject,
distribution_method="pure_count"
)
Expected Output (Weighted):
Fire: 28.5%
You can also access all element and quality percentages:
print(f"Fire: {data.element_distribution.fire_percentage}%")
print(f"Earth: {data.element_distribution.earth_percentage}%")
print(f"Air: {data.element_distribution.air_percentage}%")
print(f"Water: {data.element_distribution.water_percentage}%")
print(f"Cardinal: {data.quality_distribution.cardinal_percentage}%")
print(f"Fixed: {data.quality_distribution.fixed_percentage}%")
print(f"Mutable: {data.quality_distribution.mutable_percentage}%")
Expected Output:
Fire: 28.5%
Earth: 22.3%
Air: 31.7%
Water: 17.5%
Cardinal: 35.2%
Fixed: 28.4%
Mutable: 36.4%
Weights System #
In Weighted mode, points contribute different amounts to the score.
| Points | Weight |
|---|---|
Sun, Moon, Ascendant |
2.0 |
Mercury, Venus, Mars, MC, Desc, IC |
1.5 |
Jupiter, Saturn |
1.0 |
Vertex, Fortuna, Nodes |
0.8 |
Chiron |
0.6 |
Uranus, Neptune, Pluto |
0.5 |
Asteroids |
0.4 |
Custom Weights #
You can override specific weights while keeping others default.
custom_data = ChartDataFactory.create_natal_chart_data(
subject,
distribution_method="weighted",
custom_distribution_weights={
"sun": 3.0, # Emphasize Sun
"chiron": 1.5, # Emphasize Chiron
"__default__": 1.0 # Everything else
}
)
Need this in production? Use the Astrologer API for hosted calculations, charts, and AI interpretations - no server setup required. Learn more →