Skip to main content

Star charts and maps of the sky

Project description

Starplot

Python PyPI License GitHub Workflow Status

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 - png, svg, jpeg
  • 🚀 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, French, Lithuanian, Persian, and Spanish

Examples

Zenith chart of the stars from a specific time/location: starchart-blue

Map around the constellation Orion: map-orion

The Pleiades star cluster, as seen through a refractor telescope from a specific time and location: optic-pleiades

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,
    autoscale=True,
)
p.constellations()
p.stars(where=[_.magnitude < 4.6])
p.constellation_labels()
p.horizon()
p.export("starchart.png")

Documentation

https://starplot.dev

Demo

For a demo of Starplot's zenith charts, check out:

Sky Atlas - Star Chart Creator

Getting Help / Updates

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

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

starplot-0.20.4.tar.gz (3.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

starplot-0.20.4-py2.py3-none-any.whl (2.5 MB view details)

Uploaded Python 2Python 3

File details

Details for the file starplot-0.20.4.tar.gz.

File metadata

  • Download URL: starplot-0.20.4.tar.gz
  • Upload date:
  • Size: 3.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.34.2

File hashes

Hashes for starplot-0.20.4.tar.gz
Algorithm Hash digest
SHA256 b6c62a83a52d3c2a0060d86bedeecb7c2a0a1753332a1e43112e5905ec1574b3
MD5 22ba36729c32e15e744f38a5525ca949
BLAKE2b-256 0b40898357d4d48f1e13c84f5052291c4f5ee6ed8693208b5f920267d6bdd0be

See more details on using hashes here.

File details

Details for the file starplot-0.20.4-py2.py3-none-any.whl.

File metadata

  • Download URL: starplot-0.20.4-py2.py3-none-any.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.34.2

File hashes

Hashes for starplot-0.20.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 8f8460a108bb80b8125ec909c8935541701ff0e33202f83fd93d70cb3895a098
MD5 c6c2a88c070eece3167509703597dcc0
BLAKE2b-256 e195037c410a1262bc6bf7038f1d72c164bf94add3b7441dfc4bf64198e178b6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page