Skip to main content

Plate solving and plotting exoplanets on your astronomy image.

Project description

exoplot

Plotting exoplanets on your astronomy image

  • plate solving by uploading your image to http://nova.astrometry.net and downloads the results.
  • plotting all confirmed exoplanets (as of july 2023) on a copy of your image.

Important! you need to request an api_key for the plate solving functionality: https://nova.astrometry.net/api_help

Resources

Install

> virtualenv env
> source env/bin/activate
> pip install astropy Pillow
> pip install exoplot --upgrade

Usage

exoplot -h

usage: main.py [-h] [--astrometry_api_key ASTROMETRY_API_KEY]
               [--astrometry_url ASTROMETRY_URL]
               [--exoplanets_db EXOPLANETS_DB] [--source SOURCE]
               [--submission_id SUBMISSION_ID] [--title TITLE] [--size SIZE]
               [--path_to_image PATH_TO_IMAGE] [--output_dir OUTPUT_DIR]
               [--argfile [ARGFILE]]

options:
  -h, --help            show this help message and exit
  --astrometry_api_key ASTROMETRY_API_KEY
                        the api_key that you requested at
                        https://nova.astrometry.net/api_help
  --astrometry_url ASTROMETRY_URL
                        astrometry instance for plate solving. If not provided
                        http://nova.astrometry.net will be used
  --exoplanets_db EXOPLANETS_DB
                        path to exoplanets sqlite3 database. If not provided
                        the onboard (july 2023) database will be used
  --source SOURCE       Background image to draw exoplanets on? Options are:
                        'raw', 'annotated', 'grid'
  --submission_id SUBMISSION_ID
                        if the submission_id is known then no new job is
                        submitted, but instead the existing job is checked for
                        results. Useful for playing with the other parameters
                        while keeping the existing plate solving results.
  --title TITLE         display your title on the output image
  --size SIZE           circle size in pixels
  --path_to_image PATH_TO_IMAGE
                        input image, if not provided the onboard example image
                        will be used
  --output_dir OUTPUT_DIR
                        directory where the output results will be stored
  --argfile [ARGFILE]   Ascii file with arguments (overrides all other
                        arguments

The most important options

--astrometry_api_key

you need to request an api_key for the plate solving functionality: https://nova.astrometry.net/api_help

--path_to_image

This is the path to your .jpg or .png file. If not provided, it will use an example image of Lyra

--output_dir

The directory where the results of the plate solving and image drawing are stored. All files start with a job_id. The following files will be there after a run. (note: for size considerations, the following images are partial screenshots)

  • <job_id>.fits : the original input image converted to fits
  • <job_id>_annotated.jpg : constellation lines, stars and dso names, downloaded from astrometry.net
  • <job_id>_grid.jpg : the previous annotated image, but with a coordinate grid drawn (by the exoplot tool)
  • <job_id>_sky_globe.jpg : a global skymap showing the location of your image
  • <job_id>_sky_plot.jpg : a more detailed skymap showing the location of your image
  • <job_id>_exoplanets.jpg : a copy of your image with all currently known confirmed exoplanets plotted.

--source

You can choose on which image you plot the exoplanets:

  • your raw image
  • the plate solved annotated image
  • the annotated image with a RA/dec grid drawn on it.

For Developers

clone the repo

clone https://github.com/nvermaas/exoplot.git

run locally (like in PyCharm)

  • Execute the main.py file
  • Required parameter: --astrometry_api_key <your-api-key>
  • See the options: -h

build

py -m build

upload to pypi

py -m twine upload dist/*

deploy

pip install exoplot --upgrade

disclaimer: I originally used an old version of an astrometry.net client, but I cannot remember where I found it. So the following class was not written by me, but by some anonymous hero. https://github.com/nvermaas/exoplot/blob/master/exoplot/astrometry/astrometry_client.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

exoplot-0.2.1.tar.gz (23.8 MB view details)

Uploaded Source

Built Distribution

exoplot-0.2.1-py3-none-any.whl (13.2 MB view details)

Uploaded Python 3

File details

Details for the file exoplot-0.2.1.tar.gz.

File metadata

  • Download URL: exoplot-0.2.1.tar.gz
  • Upload date:
  • Size: 23.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.8

File hashes

Hashes for exoplot-0.2.1.tar.gz
Algorithm Hash digest
SHA256 46fe75f757c857ae0962943a793e733229327a11bad5455dceaaad8590635ea9
MD5 c4fdab17b241a47cba97fd911ee6b7e0
BLAKE2b-256 2697761e9088906015319ed44180c232fb63635512dc62c612df293cbb1f8780

See more details on using hashes here.

File details

Details for the file exoplot-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: exoplot-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 13.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.8

File hashes

Hashes for exoplot-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a18d62a017ab05d6b4f6a7fdf679dc8ab8a694c35a323ca03455e6e9aa1c47da
MD5 02180b9ef8746a3b2b83f1f7938d502d
BLAKE2b-256 6dd01524842688a16bc25653c03368e53ec8a6b1a66b05b9d95ad1710d00d061

See more details on using hashes here.

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