Starplot is a Python library for creating star charts and maps of the sky
- Maps - including 10+ customizable projections
- Zenith Charts - shows the entire sky at a specific time and place
- Horizon Charts - shows the horizon at a specific time and place
- Optic Simulations - shows what you'll see through an optic (e.g. telescope) at a specific time and place
- Galactic Charts - shows a Mollweide projection in galactic coordinates
- Planets and Deep Sky Objects (DSOs) - with support for plotting their true extent
- Comets and Satellites - easy trajectory plotting
- Custom Styles - for all objects and with 8+ built-in themes
- Export - SVG or PNG
- Data Backend - powered by DuckDB + Ibis for fast object lookup
- Custom Data Catalogs - with helpers for building and optimizing
- Label Collision Avoidance - ensuring all labels are readable
- Localization - label translations for Chinese, Dutch, French, Italian, Lithuanian, Persian, and Spanish
Examples
Zenith chart of the stars from a specific time and place:
Map around the constellation Orion:
Horizon at a specific time and place:
The Pleiades star cluster, as seen through a refractor telescope from a specific time and place:
Basic Usage
To create a star chart for tonight's sky as seen from Palomar Mountain in California:
from datetime import datetime
from zoneinfo import ZoneInfo
from starplot import ZenithPlot, Observer, styles, _
tz = ZoneInfo("America/Los_Angeles")
dt = datetime.now(tz).replace(hour=22)
observer = Observer(
dt=dt,
lat=33.363484,
lon=-116.836394,
)
p = ZenithPlot(
observer=observer,
style=styles.PlotStyle().extend(
styles.extensions.BLUE_MEDIUM,
),
resolution=4096,
)
p.constellations()
p.stars(where=[_.magnitude < 4.6])
p.constellation_labels()
p.horizon()
p.export("starchart.svg")
Documentation
Demo
For a demo of Starplot's zenith charts, check out:
Sky Atlas - Star Chart Creator
Getting Help / Updates
- Chat with other starplotters on our Discord server
- Follow us on Bluesky
- Join our newsletter
- See more examples at Starplotting.com
Contributing
Contributing to Starplot is welcome and very much appreciated! Please see here for details.
Coming Soon
- 🧮 Coordinate system helpers
- 🌑 Planet moons
- ✴️ Custom markers
- 😄 🔭 Clear skies
See more details on the Public Roadmap
Related Repositories
- starplot-bigsky
- starplot-constellations
- starplot-ongc
- starplot-hyg
- starplot-gaia-dr3
- starplot-hyperleda
- starplot-milkyway
License
Release files for starplot 0.21.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| starplot-0.21.0.tar.gz | 1.6 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| starplot-0.21.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.8 MB
Release files / starplot-0.21.0.tar.gz
| Download URL | starplot-0.21.0.tar.gz |
|---|---|
| Size | 1.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b542f825ba68021da26d4746c66f4bd93cdc1de4835d15258942a4f0d784e683
|
|
BLAKE2b-256 checksum How to use checksums |
43401fd28b5b18862830f53e8208281cd07cfcd8666bb40d1e69df7002ac6898
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.34.2
|
Release files / starplot-0.21.0-py3-none-any.whl
| Download URL | starplot-0.21.0-py3-none-any.whl |
|---|---|
| Size | 221.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3a9da934729e061959172186f805cf3c9b680ba800cdc829df056714fb238cbe
|
|
BLAKE2b-256 checksum How to use checksums |
7a05278b94e534002fa97c3edd4ba8b3f6f498a51e54355cb441eddc43dfd5b4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.34.2
|