Skip to main content

A Python package to generate an astronomy star chart based on spherical projection that corrects for distortions to generate star charts with spherical projection

Project description

Star-Chart-Spherical-Projection

PyPi license

A Python package to generate an astronomy star chart based on spherical projection with +90/-90° in the center (orignally based on this Astrolabe work) based on a star's position (declination and right ascension): past, present, and future (proper motion and *precession)

The first step to plot the celestial sphere onto a 2D plot is to map the star's right ascension as hours along the plot (polar plot's theta value) and declination as the distance from the center of the circle (polar plot's radius value). However, attempting to map the right ascension and declination directly will cause a distinct amount of distortion since the angles between the stars along the declination are no longer conserved. On the left, the constellation of the Big Dipper is stretched into an unfamiliar shape. By accounting for the spherical transformation, the star chart can be corrected as seen on the right.

Without Correction With Correction
without_correction with_correction

The sphere is projected from the South Pole (via Sterographic projection): sterographic_projection

Example outputs:

Star Chart in the Northern Hemisphere (centered on 90°) north_star_chart_without_precession_without_labels+png Star Chart in the Southern Hemisphere (centered on -90°) south_star_chart_without_precession_without_labels+png *precession to be added

Overview

From the perspective of an observer on the Earth's surface, the stars appear to sit along the surface of the celestial sphere--an imaginary sphere of arbitery radius with the Earth at its center. All objects in the sky will appear projected on the celestial sphere regardless of their true distance from Earth. Each star's position is given by two values. Declination is the angular distance from the celestial equator and right ascension is the distance from the position of the vernal equinox. The stars will appear to rotate across the sky as a result of the Earth's rotation, but their position is fixed. A star’s actual position does change over time as the combined result of the star’s small movement (proper motion) as well as the changing rotational axis of the Earth (precession).

Spherical projection can overcome this difficulty by converting the position of the declination to:

# Projected from South Pole (Northern Hemisphere)
north_hemisphere_declination = tan(45° + (original_declination / 2))

# Projected from North Pole (Southern Hemisphere)
south_hemisphere_declination = tan(45° - (original_declination / 2))

Where in the Northern Hemsiphere, projections are formed from the South Pole: morrisons_astrolabe

Dependencies

Python 3.7

pip3 install -r requirements.txt

Install

PyPi pip install at pypi.org/project/star-chart-spherical-projection/

pip install star-chart-spherical-projection

Documentation

Examples

import star_chart_spherical_projection
star_chart_spherical_projection.plotStarChart(northOrSouth="North", star_plot_color="red")

Tests

TODO:

Add README badges: tests

TODO: check that user list has stars that are found in current list

Update pypi setup.py development status

Update tarball download_url via VERSION tag

Move constants to init.py instead of config.py

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

star-chart-spherical-projection-0.1.8.tar.gz (15.6 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file star-chart-spherical-projection-0.1.8.tar.gz.

File metadata

File hashes

Hashes for star-chart-spherical-projection-0.1.8.tar.gz
Algorithm Hash digest
SHA256 66e597360a2fbe7c8ba9999f15d949c340737a555622f75ea9b56b1565bd8745
MD5 377d472349671f1e88a711cac8e2a990
BLAKE2b-256 d2b6e525788805331f9ee6890aa3ba848e5b7da13a388547f422b0925d046996

See more details on using hashes here.

Provenance

File details

Details for the file star_chart_spherical_projection-0.1.8-py3-none-any.whl.

File metadata

File hashes

Hashes for star_chart_spherical_projection-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 7847ae1faa1085582c8056e421d4ac38f28cb0ac776dbdd34556ba3e93499eee
MD5 daf32aef06db8ea0bb483e192e04ffd2
BLAKE2b-256 6d51d757c57810a9e084faf86b3b02e6031b77c3b3b49027745925fbb6372151

See more details on using hashes here.

Provenance

Supported by

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