Skip to main content

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

Metadata

Release files for star-chart-spherical-projection 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for star-chart-spherical-projection 0.1.7
File Size Uploaded
star-chart-spherical-projection-0.1.7.tar.gz 15.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for star-chart-spherical-projection 0.1.7
File Interpreter ABI Platform
star_chart_spherical_projection-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 31.6 kB

Release files / star-chart-spherical-projection-0.1.7.tar.gz

Download URL star-chart-spherical-projection-0.1.7.tar.gz
Size 15.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9ddbb4edd9b56b63d22f0ce728e524a1a8b5709167e05c79997fcfaa8b2575d2
BLAKE2b-256 checksum
How to use checksums
c316b25da64554b95bd20a9e0c92c896267c37bc440f8309a3754af284c4bfad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.3

Release files / star_chart_spherical_projection-0.1.7-py3-none-any.whl

Download URL star_chart_spherical_projection-0.1.7-py3-none-any.whl
Size 16.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2715a8093910e7fb6aee6d73a19fb1e39985de2a8e617bb0b4785e7ed266211f
BLAKE2b-256 checksum
How to use checksums
3191f15a706aade31bcc3c0dac79cc2b9ba5fa0fc91e2aff121161cf609931a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.3

Release history Release notifications | RSS feed

2.0.1

2 release files

2.0.0

2 release files

1.6.0

2 release files

1.5.0

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.4

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.1.8

2 release files

This release

0.1.7 This release

2 release files

0.1.6

2 release files

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

2 release files

0.0.2

1 release file

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page