Starplot is a Python library for creating star charts and maps.
- ⭐ Zenith Plots - showing the stars from a specific time/location
- 🗺️ Map Plots - including North/South polar and Mercator projections
- 🔭 Optic Plots - simulates what you'll see through an optic (e.g. binoculars, telescope) from a time/location
- 🪐 Planets and Deep Sky Objects (DSOs)
- 🎨 Custom Styles - for all objects
- 📥 Export - png, svg
- 🧭 Label Collision Avoidance
Zenith plot of the stars from a specific time/location:
Map around the constellation Orion, with M42 marked:
Optic plot of The Pleiades through a refractor as seen from a specific time/location:
To create a star chart for tonight's sky as seen from Palomar Mountain in California:
from datetime import datetime
from pytz import timezone
import starplot as sp
tz = timezone("America/Los_Angeles")
p = sp.ZenithPlot(
lat=33.363484,
lon=-116.836394,
dt=datetime.now(tz).replace(hour=22),
limiting_magnitude=4.6,
resolution=2000,
)
p.export("starchart.png")
For a demo of Starplot's zenith plots, check out:
Sky Atlas - Star Chart Creator
- matplotlib
- pandas
- numpy
- geopandas
- cartopy
- skyfield
- pydantic
- adjustText
- ⚖️ Better auto font-size adjustment
- ☄️ Better label collision detection and handling