Modern Charts #
The modern concentric-ring layout is Kerykeion’s default chart style. It renders charts with graduated ruler scales, clean aspect lines with midpoint glyphs, and a distinct visual hierarchy.
All chart types and all three themes ("classic", "dark", "black-and-white", plus theme=None for no CSS at all) work with the modern style. The traditional wheel remains available via style="classic" — see the Charts documentation.
Modern Natal Chart #
Modern is the default: save_svg() and generate_svg_string() render it without any extra argument (passing style="modern" explicitly is equivalent).
from pathlib import Path
from kerykeion import AstrologicalSubjectFactory
from kerykeion.chart_data.factory import ChartDataFactory
from kerykeion.charts.drawer import ChartDrawer
subject = AstrologicalSubjectFactory.from_birth_data(
"John Lennon", 1940, 10, 9, 18, 30,
lng=-2.9833, lat=53.4, tz_str="Europe/London", online=False,
)
chart_data = ChartDataFactory.create_natal_chart_data(subject)
chart = ChartDrawer(chart_data=chart_data)
output_dir = Path("charts_output")
output_dir.mkdir(exist_ok=True)
chart.save_svg(output_path=output_dir, filename="lennon-modern-natal")
Modern Synastry Chart #
Dual-wheel modern charts show two subjects with distinct inner and outer planet rings.
from pathlib import Path
from kerykeion import AstrologicalSubjectFactory
from kerykeion.chart_data.factory import ChartDataFactory
from kerykeion.charts.drawer import ChartDrawer
john = AstrologicalSubjectFactory.from_birth_data(
"John Lennon", 1940, 10, 9, 18, 30,
lng=-2.9833, lat=53.4, tz_str="Europe/London", online=False,
)
yoko = AstrologicalSubjectFactory.from_birth_data(
"Yoko Ono", 1933, 2, 18, 20, 30,
lng=139.6917, lat=35.6895, tz_str="Asia/Tokyo", online=False,
)
chart_data = ChartDataFactory.create_synastry_chart_data(john, yoko)
chart = ChartDrawer(chart_data=chart_data)
output_dir = Path("charts_output")
output_dir.mkdir(exist_ok=True)
chart.save_svg(output_path=output_dir, filename="lennon-ono-modern-synastry")
Modern Transit Chart #
from pathlib import Path
from kerykeion import AstrologicalSubjectFactory
from kerykeion.chart_data.factory import ChartDataFactory
from kerykeion.charts.drawer import ChartDrawer
subject = AstrologicalSubjectFactory.from_birth_data(
"John Lennon", 1940, 10, 9, 18, 30,
lng=-2.9833, lat=53.4, tz_str="Europe/London", online=False,
)
transit = AstrologicalSubjectFactory.from_birth_data(
"Transit", 2025, 3, 4, 12, 0,
lng=-2.9833, lat=53.4, tz_str="Europe/London", online=False,
)
chart_data = ChartDataFactory.create_transit_chart_data(subject, transit)
chart = ChartDrawer(chart_data=chart_data)
output_dir = Path("charts_output")
output_dir.mkdir(exist_ok=True)
chart.save_svg(output_path=output_dir, filename="lennon-modern-transit")
Modern Wheel Only #
The wheel-only output (without aspect grid) also supports the modern style:
from pathlib import Path
from kerykeion import AstrologicalSubjectFactory
from kerykeion.chart_data.factory import ChartDataFactory
from kerykeion.charts.drawer import ChartDrawer
subject = AstrologicalSubjectFactory.from_birth_data(
"John Lennon", 1940, 10, 9, 18, 30,
lng=-2.9833, lat=53.4, tz_str="Europe/London", online=False,
)
chart_data = ChartDataFactory.create_natal_chart_data(subject)
chart = ChartDrawer(chart_data=chart_data, theme="dark")
output_dir = Path("charts_output")
output_dir.mkdir(exist_ok=True)
chart.save_wheel_only_svg_file(
output_path=output_dir,
filename="lennon-modern-wheel-dark",
)
Modern-Only Parameters #
These keyword arguments are specific to the modern style and are ignored when style="classic":
| Parameter | Type | Default | Description |
|---|---|---|---|
show_zodiac_background_ring |
bool |
True |
Draw colored zodiac wedges behind the outer planet ring |
glyph_size |
"small" | "medium" | "large" |
"medium" |
Planet-cluster size on the wheel — see Glyph Sizes |
Both can be set once on the constructor as a per-instance default, or per call on any render method.
Example disabling the zodiac background:
chart.save_svg(
output_path=output_dir,
filename="modern-no-zodiac-bg",
show_zodiac_background_ring=False,
)
Classic vs Modern Comparison #
Both styles share the same underlying ChartDataFactory data. Only the rendering differs:
| Feature | Classic | Modern |
|---|---|---|
| Layout | Traditional wheel with sectors | Concentric rings |
| Aspect display | Grid/list panel | Lines with midpoint glyphs in the core ring |
| Degree indicators | Ticks around the wheel | Graduated ruler ring (1°/5°/10° ticks) |
| Dual chart layout | Inner/outer wheel | Flat dual-ring with shared ruler |
| All themes supported | Yes | Yes |
| All chart types supported | Yes | Yes |