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, German, 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
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
Metadata
Release files for starplot 0.21.3
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.3.tar.gz | 1.6 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| starplot-0.21.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.8 MB
Release files / starplot-0.21.3.tar.gz
| Download URL | starplot-0.21.3.tar.gz |
|---|---|
| Size | 1.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
35f13fb514284ed9912e79f5913d52908de8ecd1931c9d6f9143c85f07b0909a
|
|
BLAKE2b-256 checksum How to use checksums |
a220788f347708bd4cabf13223c66ed6bb0c28ef69492dfbe48fef72ba5ecf62
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.34.2
|
Release files / starplot-0.21.3-py3-none-any.whl
| Download URL | starplot-0.21.3-py3-none-any.whl |
|---|---|
| Size | 227.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
72e007eb5bce3a9649e8545590dc0213c898076191e27fa6393beae82515ec93
|
|
BLAKE2b-256 checksum How to use checksums |
1f3a8644ea1aa8f9348e10c528c642ff60ef75ebc74d15d917f1740fd0532b06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.34.2
|