kerykeion 5.0.0a1__tar.gz → 5.0.0a3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of kerykeion might be problematic. Click here for more details.
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/PKG-INFO +117 -105
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/README.md +116 -104
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/__init__.py +1 -2
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/charts_utils.py +119 -87
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/kerykeion_chart_svg.py +62 -26
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/templates/chart.xml +13 -6
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/kr_types/chart_types.py +4 -2
- {kerykeion-5.0.0a1/kerykeion/relationship_score → kerykeion-5.0.0a3/kerykeion}/relationship_score_factory.py +3 -3
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/pyproject.toml +1 -1
- kerykeion-5.0.0a1/kerykeion/relationship_score/__init__.py +0 -2
- kerykeion-5.0.0a1/kerykeion/relationship_score/relationship_score.py +0 -175
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/LICENSE +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/aspects/__init__.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/aspects/aspects_utils.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/aspects/natal_aspects.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/aspects/synastry_aspects.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/aspects/transits_time_range.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/astrological_subject_factory.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/__init__.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/draw_planets.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/draw_planets_v2.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/templates/aspect_grid_only.xml +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/templates/wheel_only.xml +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/themes/classic.css +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/themes/dark-high-contrast.css +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/themes/dark.css +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/themes/light.css +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/charts/themes/strawberry.css +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/composite_subject_factory.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/enums.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/ephemeris_data.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/fetch_geonames.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/house_comparison/__init__.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/house_comparison/house_comparison_factory.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/house_comparison/house_comparison_models.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/house_comparison/house_comparison_utils.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/kr_types/__init__.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/kr_types/kerykeion_exception.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/kr_types/kr_literals.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/kr_types/kr_models.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/kr_types/settings_models.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/planetary_return_factory.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/report.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/settings/__init__.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/settings/config_constants.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/settings/kerykeion_settings.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/settings/kr.config.json +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/settings/legacy/__init__.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/settings/legacy/legacy_celestial_points_settings.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/settings/legacy/legacy_chart_aspects_settings.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/settings/legacy/legacy_color_settings.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/sweph/README.md +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/sweph/seas_18.se1 +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/transits_time_range.py +0 -0
- {kerykeion-5.0.0a1 → kerykeion-5.0.0a3}/kerykeion/utilities.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: kerykeion
|
|
3
|
-
Version: 5.0.
|
|
3
|
+
Version: 5.0.0a3
|
|
4
4
|
Summary: A python library for astrology.
|
|
5
5
|
License: AGPL-3.0
|
|
6
6
|
Keywords: astrology,ephemeris,astrology library,birtchart,svg,zodiac,zodiac-sing,astronomical-algorithms,synastry,astrology-calculator
|
|
@@ -79,8 +79,17 @@ Maintaining this project requires substantial time and effort. The Astrologer AP
|
|
|
79
79
|
|
|
80
80
|
[](https://ko-fi.com/kerykeion)
|
|
81
81
|
|
|
82
|
+
## ⚠️ Development Branch Notice
|
|
83
|
+
|
|
84
|
+
This branch (`next`) is **not the stable version** of Kerykeion. It is the **development branch for the upcoming V5 release**.
|
|
85
|
+
|
|
86
|
+
If you're looking for the latest stable version, please check out the [`master`](https://github.com/g-battaglia/kerykeion/tree/master) branch instead.
|
|
82
87
|
|
|
83
88
|
## Table of Contents
|
|
89
|
+
- [**Web API**](#web-api)
|
|
90
|
+
- [**Donate**](#donate)
|
|
91
|
+
- [⚠️ Development Branch Notice](#️-development-branch-notice)
|
|
92
|
+
- [Table of Contents](#table-of-contents)
|
|
84
93
|
- [Installation](#installation)
|
|
85
94
|
- [Basic Usage](#basic-usage)
|
|
86
95
|
- [Generate a SVG Chart](#generate-a-svg-chart)
|
|
@@ -127,34 +136,34 @@ pip3 install kerykeion
|
|
|
127
136
|
Below is a simple example illustrating the creation of an astrological subject and retrieving astrological details:
|
|
128
137
|
|
|
129
138
|
```python
|
|
130
|
-
from kerykeion import
|
|
139
|
+
from kerykeion import AstrologicalSubjectFactory
|
|
131
140
|
|
|
132
|
-
# Create an instance of the
|
|
141
|
+
# Create an instance of the AstrologicalSubjectFactory class.
|
|
133
142
|
# Arguments: Name, year, month, day, hour, minutes, city, nation
|
|
134
|
-
|
|
143
|
+
john = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
135
144
|
|
|
136
145
|
# Retrieve information about the Sun:
|
|
137
|
-
|
|
138
|
-
# > {
|
|
146
|
+
print(john.sun.model_dump_json())
|
|
147
|
+
# > {"name":"Sun","quality":"Cardinal","element":"Air","sign":"Lib","sign_num":6,"position":16.26789199474399,"abs_pos":196.267891994744,"emoji":"♎️","point_type":"AstrologicalPoint","house":"Sixth_House","retrograde":false}
|
|
139
148
|
|
|
140
149
|
# Retrieve information about the first house:
|
|
141
|
-
|
|
142
|
-
# > {
|
|
150
|
+
print(john.first_house.model_dump_json())
|
|
151
|
+
# > {"name":"First_House","quality":"Cardinal","element":"Fire","sign":"Ari","sign_num":0,"position":19.74676624176799,"abs_pos":19.74676624176799,"emoji":"♈️","point_type":"House","house":null,"retrograde":null}
|
|
143
152
|
|
|
144
153
|
# Retrieve the element of the Moon sign:
|
|
145
|
-
|
|
146
|
-
# > '
|
|
154
|
+
print(john.moon.element)
|
|
155
|
+
# > 'Air'
|
|
147
156
|
```
|
|
148
157
|
|
|
149
158
|
**To avoid using GeoNames online, specify longitude, latitude, and timezone instead of city and nation:**
|
|
150
159
|
|
|
151
160
|
```python
|
|
152
|
-
|
|
153
|
-
"
|
|
154
|
-
lng
|
|
155
|
-
lat=
|
|
156
|
-
tz_str="Europe/
|
|
157
|
-
city="
|
|
161
|
+
john = AstrologicalSubjectFactory.from_birth_data(
|
|
162
|
+
"John Lennon", 1940, 10, 9, 18, 30,
|
|
163
|
+
lng=-2.9833, # Longitude for Liverpool
|
|
164
|
+
lat=53.4000, # Latitude for Liverpool
|
|
165
|
+
tz_str="Europe/London", # Timezone for Liverpool
|
|
166
|
+
city="Liverpool",
|
|
158
167
|
)
|
|
159
168
|
```
|
|
160
169
|
|
|
@@ -169,9 +178,9 @@ To improve compatibility across different applications, you can use the `remove_
|
|
|
169
178
|
### Birth Chart
|
|
170
179
|
|
|
171
180
|
```python
|
|
172
|
-
from kerykeion import
|
|
181
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
173
182
|
|
|
174
|
-
john =
|
|
183
|
+
john = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
175
184
|
birth_chart_svg = KerykeionChartSVG(john)
|
|
176
185
|
birth_chart_svg.makeSVG()
|
|
177
186
|
```
|
|
@@ -186,8 +195,8 @@ The SVG file will be saved in the home directory.
|
|
|
186
195
|
### External Birth Chart
|
|
187
196
|
|
|
188
197
|
```python
|
|
189
|
-
from kerykeion import
|
|
190
|
-
birth_chart =
|
|
198
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
199
|
+
birth_chart = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
191
200
|
birth_chart_svg = KerykeionChartSVG(birth_chart, chart_type="ExternalNatal")
|
|
192
201
|
birth_chart_svg.makeSVG()
|
|
193
202
|
```
|
|
@@ -196,10 +205,10 @@ birth_chart_svg.makeSVG()
|
|
|
196
205
|
### Synastry Chart
|
|
197
206
|
|
|
198
207
|
```python
|
|
199
|
-
from kerykeion import
|
|
208
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
200
209
|
|
|
201
|
-
first =
|
|
202
|
-
second =
|
|
210
|
+
first = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
211
|
+
second = AstrologicalSubjectFactory.from_birth_data("Paul McCartney", 1942, 6, 18, 15, 30, "Liverpool", "GB")
|
|
203
212
|
|
|
204
213
|
synastry_chart = KerykeionChartSVG(first, "Synastry", second)
|
|
205
214
|
synastry_chart.makeSVG()
|
|
@@ -211,10 +220,10 @@ synastry_chart.makeSVG()
|
|
|
211
220
|
### Transit Chart
|
|
212
221
|
|
|
213
222
|
```python
|
|
214
|
-
from kerykeion import
|
|
223
|
+
from kerykeion import AstrologicalSubjectFactory
|
|
215
224
|
|
|
216
|
-
transit =
|
|
217
|
-
subject =
|
|
225
|
+
transit = AstrologicalSubjectFactory.from_birth_data("Transit", 2025, 6, 8, 8, 45, "Atlanta", "US")
|
|
226
|
+
subject = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
218
227
|
|
|
219
228
|
transit_chart = KerykeionChartSVG(subject, "Transit", transit)
|
|
220
229
|
transit_chart.makeSVG()
|
|
@@ -225,11 +234,11 @@ transit_chart.makeSVG()
|
|
|
225
234
|
### Composite Chart
|
|
226
235
|
|
|
227
236
|
```python
|
|
228
|
-
from kerykeion import CompositeSubjectFactory,
|
|
237
|
+
from kerykeion import CompositeSubjectFactory, AstrologicalSubjectFactory, KerykeionChartSVG
|
|
229
238
|
|
|
230
|
-
angelina =
|
|
239
|
+
angelina = AstrologicalSubjectFactory.from_birth_data("Angelina Jolie", 1975, 6, 4, 9, 9, "Los Angeles", "US", lng=-118.15, lat=34.03, tz_str="America/Los_Angeles")
|
|
231
240
|
|
|
232
|
-
brad =
|
|
241
|
+
brad = AstrologicalSubjectFactory.from_birth_data("Brad Pitt", 1963, 12, 18, 6, 31, "Shawnee", "US", lng=-96.56, lat=35.20, tz_str="America/Chicago")
|
|
233
242
|
|
|
234
243
|
factory = CompositeSubjectFactory(angelina, brad)
|
|
235
244
|
composite_model = factory.get_midpoint_composite_subject_model()
|
|
@@ -246,9 +255,9 @@ For *all* the charts, you can generate a wheel-only chart by using the method `m
|
|
|
246
255
|
|
|
247
256
|
### Birth Chart
|
|
248
257
|
```python
|
|
249
|
-
from kerykeion import
|
|
258
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
250
259
|
|
|
251
|
-
birth_chart =
|
|
260
|
+
birth_chart = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
252
261
|
birth_chart_svg = KerykeionChartSVG(birth_chart)
|
|
253
262
|
birth_chart_svg.makeWheelOnlySVG()
|
|
254
263
|
```
|
|
@@ -257,8 +266,8 @@ birth_chart_svg.makeWheelOnlySVG()
|
|
|
257
266
|
### Wheel Only Birth Chart (External)
|
|
258
267
|
|
|
259
268
|
```python
|
|
260
|
-
from kerykeion import
|
|
261
|
-
birth_chart =
|
|
269
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
270
|
+
birth_chart = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
262
271
|
birth_chart_svg = KerykeionChartSVG(birth_chart, chart_type="ExternalNatal")
|
|
263
272
|
birth_chart_svg.makeWheelOnlySVG(
|
|
264
273
|
wheel_only=True,
|
|
@@ -270,9 +279,9 @@ birth_chart_svg.makeWheelOnlySVG(
|
|
|
270
279
|
|
|
271
280
|
### Synastry Chart
|
|
272
281
|
```python
|
|
273
|
-
from kerykeion import
|
|
274
|
-
first =
|
|
275
|
-
second =
|
|
282
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
283
|
+
first = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
284
|
+
second = AstrologicalSubjectFactory.from_birth_data("Paul McCartney", 1942, 6, 18, 15, 30, "Liverpool", "GB")
|
|
276
285
|
synastry_chart = KerykeionChartSVG(
|
|
277
286
|
first, "Synastry", second
|
|
278
287
|
)
|
|
@@ -286,10 +295,10 @@ synastry_chart.makeWheelOnlySVG()
|
|
|
286
295
|
To save the SVG file in a custom location, specify `new_output_directory`:
|
|
287
296
|
|
|
288
297
|
```python
|
|
289
|
-
from kerykeion import
|
|
298
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
290
299
|
|
|
291
|
-
first =
|
|
292
|
-
second =
|
|
300
|
+
first = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
301
|
+
second = AstrologicalSubjectFactory.from_birth_data("Paul McCartney", 1942, 6, 18, 15, 30, "Liverpool", "GB")
|
|
293
302
|
|
|
294
303
|
synastry_chart = KerykeionChartSVG(
|
|
295
304
|
first, "Synastry", second,
|
|
@@ -303,9 +312,9 @@ synastry_chart.makeSVG()
|
|
|
303
312
|
You can switch chart language by passing `chart_language` to the `KerykeionChartSVG` class:
|
|
304
313
|
|
|
305
314
|
```python
|
|
306
|
-
from kerykeion import
|
|
315
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
307
316
|
|
|
308
|
-
first =
|
|
317
|
+
first = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
309
318
|
birth_chart_svg = KerykeionChartSVG(
|
|
310
319
|
birth_chart,
|
|
311
320
|
chart_language="IT" # Change to Italian
|
|
@@ -331,8 +340,8 @@ The available languages are:
|
|
|
331
340
|
To generate a minified SVG, set `minify_svg=True` in the `makeSVG()` method:
|
|
332
341
|
|
|
333
342
|
```python
|
|
334
|
-
from kerykeion import
|
|
335
|
-
first =
|
|
343
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
344
|
+
first = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
336
345
|
birth_chart_svg = KerykeionChartSVG(birth_chart)
|
|
337
346
|
birth_chart_svg.makeSVG(
|
|
338
347
|
minify=True
|
|
@@ -343,9 +352,9 @@ birth_chart_svg.makeSVG(
|
|
|
343
352
|
To generate an SVG without CSS variables, set `remove_css_variables=True` in the `makeSVG()` method:
|
|
344
353
|
|
|
345
354
|
```python
|
|
346
|
-
from kerykeion import
|
|
355
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
347
356
|
|
|
348
|
-
first =
|
|
357
|
+
first = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
349
358
|
birth_chart_svg = KerykeionChartSVG(birth_chart)
|
|
350
359
|
birth_chart_svg.makeSVG(
|
|
351
360
|
remove_css_variables=True
|
|
@@ -359,8 +368,8 @@ This will inline all styles and eliminate CSS variables, resulting in an SVG tha
|
|
|
359
368
|
It's possible to generate a grid-only SVG, useful for creating a custom layout. To do this, use the `makeGridOnlySVG()` method:
|
|
360
369
|
|
|
361
370
|
```python
|
|
362
|
-
from kerykeion import
|
|
363
|
-
birth_chart =
|
|
371
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
372
|
+
birth_chart = AstrologicalSubjectFactory.from_birth_data("John Lennon - Aspect Grid Dark Synastry", 1977, 6, 8, 8, 45, "Atlanta", "US")
|
|
364
373
|
aspect_grid_dark_synastry_chart = KerykeionChartSVG(aspect_grid_dark_synastry_subject, "Synastry", second, theme="dark")
|
|
365
374
|
aspect_grid_dark_synastry_chart.makeAspectGridOnlySVG()
|
|
366
375
|
```
|
|
@@ -369,57 +378,62 @@ aspect_grid_dark_synastry_chart.makeAspectGridOnlySVG()
|
|
|
369
378
|
## Report
|
|
370
379
|
|
|
371
380
|
```python
|
|
372
|
-
from kerykeion import Report,
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
381
|
+
from kerykeion import Report, AstrologicalSubjectFactory
|
|
382
|
+
|
|
383
|
+
john = AstrologicalSubjectFactory.from_birth_data(
|
|
384
|
+
"John Lennon", 1940, 10, 9, 18, 30,
|
|
385
|
+
lng=-2.9833, # Longitude for Liverpool
|
|
386
|
+
lat=53.4000, # Latitude for Liverpool
|
|
387
|
+
tz_str="Europe/London", # Timezone for Liverpool
|
|
388
|
+
city="Liverpool",
|
|
389
|
+
)
|
|
390
|
+
report = Report(john)
|
|
376
391
|
report.print_report()
|
|
377
392
|
```
|
|
378
393
|
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
|
392
|
-
|
|
|
393
|
-
|
|
|
394
|
-
|
|
|
395
|
-
|
|
|
396
|
-
|
|
|
397
|
-
|
|
|
398
|
-
|
|
|
399
|
-
|
|
|
400
|
-
|
|
|
401
|
-
|
|
|
402
|
-
|
|
|
403
|
-
|
|
|
404
|
-
|
|
405
|
-
| Chiron | Tau | 4.17 | - | Tenth_House |
|
|
406
|
-
+-----------------+------+-------+------+----------------+
|
|
394
|
+
Report output:
|
|
395
|
+
```plaintext
|
|
396
|
+
+- Kerykeion report for John Lennon -+
|
|
397
|
+
+-----------+-------+---------------+-----------+----------+
|
|
398
|
+
| Date | Time | Location | Longitude | Latitude |
|
|
399
|
+
+-----------+-------+---------------+-----------+----------+
|
|
400
|
+
| 9/10/1940 | 18:30 | Liverpool, GB | -2.9833 | 53.4 |
|
|
401
|
+
+-----------+-------+---------------+-----------+----------+
|
|
402
|
+
+-------------------+------+-------+------+----------------+
|
|
403
|
+
| AstrologicalPoint | Sign | Pos. | Ret. | House |
|
|
404
|
+
+-------------------+------+-------+------+----------------+
|
|
405
|
+
| Sun | Lib | 16.27 | - | Sixth_House |
|
|
406
|
+
| Moon | Aqu | 3.55 | - | Eleventh_House |
|
|
407
|
+
| Mercury | Sco | 8.56 | - | Seventh_House |
|
|
408
|
+
| Venus | Vir | 3.22 | - | Sixth_House |
|
|
409
|
+
| Mars | Lib | 2.66 | - | Sixth_House |
|
|
410
|
+
| Jupiter | Tau | 13.69 | R | First_House |
|
|
411
|
+
| Saturn | Tau | 13.22 | R | First_House |
|
|
412
|
+
| Uranus | Tau | 25.55 | R | First_House |
|
|
413
|
+
| Neptune | Vir | 26.03 | - | Sixth_House |
|
|
414
|
+
| Pluto | Leo | 4.19 | - | Fifth_House |
|
|
415
|
+
| Mean_Node | Lib | 10.58 | R | Sixth_House |
|
|
416
|
+
| Mean_South_Node | Ari | 10.58 | R | Twelfth_House |
|
|
417
|
+
| Mean_Lilith | Ari | 13.37 | - | Twelfth_House |
|
|
418
|
+
| Chiron | Leo | 0.57 | - | Fifth_House |
|
|
419
|
+
+-------------------+------+-------+------+----------------+
|
|
407
420
|
+----------------+------+----------+
|
|
408
421
|
| House | Sign | Position |
|
|
409
422
|
+----------------+------+----------+
|
|
410
|
-
| First_House |
|
|
411
|
-
| Second_House |
|
|
412
|
-
| Third_House |
|
|
413
|
-
| Fourth_House |
|
|
414
|
-
| Fifth_House |
|
|
415
|
-
| Sixth_House |
|
|
416
|
-
| Seventh_House |
|
|
417
|
-
| Eighth_House |
|
|
418
|
-
| Ninth_House |
|
|
419
|
-
| Tenth_House |
|
|
420
|
-
| Eleventh_House |
|
|
421
|
-
| Twelfth_House |
|
|
423
|
+
| First_House | Ari | 19.72 |
|
|
424
|
+
| Second_House | Tau | 29.52 |
|
|
425
|
+
| Third_House | Gem | 20.23 |
|
|
426
|
+
| Fourth_House | Can | 7.07 |
|
|
427
|
+
| Fifth_House | Can | 25.31 |
|
|
428
|
+
| Sixth_House | Leo | 22.11 |
|
|
429
|
+
| Seventh_House | Lib | 19.72 |
|
|
430
|
+
| Eighth_House | Sco | 29.52 |
|
|
431
|
+
| Ninth_House | Sag | 20.23 |
|
|
432
|
+
| Tenth_House | Cap | 7.07 |
|
|
433
|
+
| Eleventh_House | Cap | 25.31 |
|
|
434
|
+
| Twelfth_House | Aqu | 22.11 |
|
|
422
435
|
+----------------+------+----------+
|
|
436
|
+
```
|
|
423
437
|
|
|
424
438
|
To export to a file:
|
|
425
439
|
|
|
@@ -432,8 +446,8 @@ python3 your_script_name.py > file.txt
|
|
|
432
446
|
```python
|
|
433
447
|
from kerykeion import SynastryAspects, AstrologicalSubject
|
|
434
448
|
|
|
435
|
-
first =
|
|
436
|
-
second =
|
|
449
|
+
first = AstrologicalSubjectFactory.from_birth_data("Jack", 1990, 6, 15, 15, 15, "Roma", "IT")
|
|
450
|
+
second = AstrologicalSubjectFactory.from_birth_data("Jane", 1991, 10, 25, 21, 0, "Roma", "IT")
|
|
437
451
|
|
|
438
452
|
name = SynastryAspects(first, second)
|
|
439
453
|
aspect_list = name.get_relevant_aspects()
|
|
@@ -447,7 +461,7 @@ print(aspect_list[0])
|
|
|
447
461
|
By default, the zodiac type is **Tropical**. To use **Sidereal**, specify the sidereal mode:
|
|
448
462
|
|
|
449
463
|
```python
|
|
450
|
-
johnny =
|
|
464
|
+
johnny = AstrologicalSubjectFactory.from_birth_data(
|
|
451
465
|
"Johnny Depp", 1963, 6, 9, 0, 0,
|
|
452
466
|
"Owensboro", "US",
|
|
453
467
|
zodiac_type="Sidereal",
|
|
@@ -464,7 +478,7 @@ Full list of supported sidereal modes [here](https://www.kerykeion.net/pydocs/ke
|
|
|
464
478
|
By default, houses are calculated using **Placidus**. Configure a different house system as follows:
|
|
465
479
|
|
|
466
480
|
```python
|
|
467
|
-
johnny =
|
|
481
|
+
johnny = AstrologicalSubjectFactory.from_birth_data(
|
|
468
482
|
"Johnny Depp", 1963, 6, 9, 0, 0,
|
|
469
483
|
"Owensboro", "US",
|
|
470
484
|
houses_system="M"
|
|
@@ -482,7 +496,7 @@ So far all the available houses system in the Swiss Ephemeris are supported but
|
|
|
482
496
|
By default, Kerykeion uses the **Apparent Geocentric** perspective (the most standard in astrology). Other perspectives (e.g., **Heliocentric**) can be set this way:
|
|
483
497
|
|
|
484
498
|
```python
|
|
485
|
-
johnny =
|
|
499
|
+
johnny = AstrologicalSubjectFactory.from_birth_data(
|
|
486
500
|
"Johnny Depp", 1963, 6, 9, 0, 0,
|
|
487
501
|
"Owensboro", "US",
|
|
488
502
|
perspective_type="Heliocentric"
|
|
@@ -507,9 +521,9 @@ Each theme offers a distinct visual style, allowing you to choose the one that b
|
|
|
507
521
|
Here's an example of how to set the theme:
|
|
508
522
|
|
|
509
523
|
```python
|
|
510
|
-
from kerykeion import
|
|
524
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
511
525
|
|
|
512
|
-
dark_theme_subject =
|
|
526
|
+
dark_theme_subject = AstrologicalSubjectFactory.from_birth_data("John Lennon - Dark Theme", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
513
527
|
dark_theme_natal_chart = KerykeionChartSVG(dark_high_contrast_theme_subject, theme="dark_high_contrast")
|
|
514
528
|
dark_theme_natal_chart.makeSVG()
|
|
515
529
|
```
|
|
@@ -529,7 +543,7 @@ subject = AstrologicalSubject.get_from_iso_utc_time(
|
|
|
529
543
|
If you set `online=True`, provide a `geonames_username` to allow city-based geolocation:
|
|
530
544
|
|
|
531
545
|
```python
|
|
532
|
-
from kerykeion.astrological_subject import
|
|
546
|
+
from kerykeion.astrological_subject import AstrologicalSubjectFactory
|
|
533
547
|
|
|
534
548
|
subject = AstrologicalSubject.get_from_iso_utc_time(
|
|
535
549
|
"Johnny Depp", "1963-06-09T05:00:00Z", "Owensboro", "US", online=True
|
|
@@ -545,16 +559,14 @@ Kerykeion supports both **True** and **Mean** Lunar Nodes:
|
|
|
545
559
|
- **Mean North Lunar Node**: `"mean_node"` (name kept without "north" for backward compatibility).
|
|
546
560
|
- **Mean South Lunar Node**: `"mean_south_node"`.
|
|
547
561
|
|
|
548
|
-
In instances of the AstrologicalSubject class, all of them are active by default.
|
|
549
|
-
|
|
550
562
|
In instances of the classes used to generate aspects and SVG charts, only the mean nodes are active. To activate the true nodes, you need to pass the `active_points` parameter to the `KerykeionChartSVG` class.
|
|
551
563
|
|
|
552
564
|
Example:
|
|
553
565
|
|
|
554
566
|
```python
|
|
555
|
-
from kerykeion import
|
|
567
|
+
from kerykeion import AstrologicalSubjectFactory, KerykeionChartSVG
|
|
556
568
|
|
|
557
|
-
subject =
|
|
569
|
+
subject = AstrologicalSubjectFactory.from_birth_data("John Lennon", 1940, 10, 9, 18, 30, "Liverpool", "GB")
|
|
558
570
|
|
|
559
571
|
chart = KerykeionChartSVG(
|
|
560
572
|
subject,
|
|
@@ -587,9 +599,9 @@ chart.makeSVG()
|
|
|
587
599
|
You can serialize the astrological subject (the base data used throughout the library) to JSON:
|
|
588
600
|
|
|
589
601
|
```python
|
|
590
|
-
from kerykeion import
|
|
602
|
+
from kerykeion import AstrologicalSubjectFactory
|
|
591
603
|
|
|
592
|
-
johnny =
|
|
604
|
+
johnny = AstrologicalSubjectFactory.from_birth_data("Johnny Depp", 1963, 6, 9, 0, 0, "Owensboro", "US")
|
|
593
605
|
|
|
594
606
|
print(johnny.json(dump=False, indent=2))
|
|
595
607
|
```
|