🌠 Constellation Maps
Proposal
High-level goal
Develop a Shiny app that generates constellation maps that utilizes interactive elements, incorporating computational and visualization techniques.
Goal & Motivation
The primary objective of this project is to develop a Shiny app that not only generates interactive constellation maps but also prioritizes accessibility and personalization of these maps. By offering users the ability to input specific geographic locations, the app will provide personalized, contextually relevant constellation maps for each user. Individuals will be able to explore the night sky from different geographical locations by inputting latitude and longitudinal points to create visually provoking constellation maps. We hope to make stargazing more engaging and educational by personalizing the experience through various elements: color usage, map location, time zone, latitude/longitude location. Additionally, the app will be designed with a user-friendly interface to ensure accessibility with an aim to make it inclusive for people of all backgrounds and levels of astronomical knowledge. This will be achieved by using colorblind accessible palettes (avoiding bright and low-contrast colors) and providing annotations to provide readability and context for a wide range of users, including astronomy beginners.
Analysis Plan
- Develop a Shiny app for personalized constellation maps with user input.
- Enhance user engagement in stargazing from various locations time zones and even user bases.
- Prioritize accessibility through a user-friendly interface and colorblind-friendly design.
- Provide contextual annotations for users with different levels of astronomical knowledge.
Dataset
The datasets are available in GeoJSON (*.geojson
) and GeoPackage (*.gpkg
) formats, representing celestial objects’ positions as of the J2000 epoch. You can check out the dataset in here. They are roughly categorized into five sections: Asterisms
, Constellations
, DSOs
(Deep-Sky Objects), Stars
, and the Milky Way
. Each of these astronomical object categories is further subdivided into s
We will be using three of the available data: the milkyway, the constellation lines, and the stars.
Milky Way
Column Name | Data Type | Description |
---|---|---|
ID | String | Milky Way outlines in 5 brightness steps (ol1-ol5). |
Geometry | Line Object | geometry lines for milky way |
|> formattable() mw
id | geometry |
---|---|
ol1 | MULTIPOLYGON (((178.558 -74… |
ol2 | MULTIPOLYGON (((-176.662 -6… |
ol3 | MULTIPOLYGON (((-174.067 -6… |
ol4 | MULTIPOLYGON (((-158.721 -6… |
ol5 | MULTIPOLYGON (((161.333 -59… |
Stars
Column Name | Data Type | Description |
---|---|---|
ID | Integer | Short designator |
Mag | Double | Apparent magnitude, 999 if n.a. |
BV | Float | b-v color index. |
BR | Float | Relative brightness to magnitude 0, computed as \(100^{-1 * mag / 5}\) |
Name | String | Proper star name |
Geometry | Point Object | around 40k stars point objects |
id | mag | bv | br | name | geometry |
---|---|---|---|---|---|
677 | 2.07 | -0.038 | 0.1486 | Alpheratz | POINT (2.0969 29.0904) |
746 | 2.28 | 0.380 | 0.1225 | Caph | POINT (2.2945 59.1498) |
1067 | 2.83 | -0.190 | 0.0738 | Algenib | POINT (3.309 15.1836) |
1415 | 6.11 | -0.151 | 0.0036 | Pearce’s Star | POINT (4.4294 51.4331) |
1562 | 3.56 | 1.214 | 0.0377 | Deneb Kaitos Shemali | POINT (4.857 -8.8239) |
2081 | 2.40 | 1.083 | 0.1096 | Ankaa | POINT (6.571 -42.306) |
2920 | 3.69 | -0.196 | 0.0334 | Fulu | POINT (9.2429 53.8969) |
3179 | 2.24 | 1.170 | 0.1271 | Shedar | POINT (10.1268 56.5373) |
3419 | 2.04 | 1.019 | 0.1528 | Diphda | POINT (10.8974 -17.9866) |
3455 | 4.77 | 0.998 | 0.0124 | Alnitham | POINT (11.0475 -10.6096) |
Constellation lines
Column Name | Data Type | Description |
---|---|---|
Geometry | Line Object | 89 constellation line objects |
ID | String | 3-letter designator |
Rank | Integer | 1-3 for differential name display by size/brightness |
Name | String | full IAU name |
id | rank | name | geometry |
---|---|---|---|
And | 1 | Andromeda | MULTILINESTRING ((14.3017 2… |
Ant | 3 | Antlia | MULTILINESTRING ((142.3113 … |
Aps | 3 | Apus | MULTILINESTRING ((-138.0345… |
Aqr | 2 | Aquarius | MULTILINESTRING ((-48.081 -… |
Aql | 1 | Aquila | MULTILINESTRING ((-63.4351 … |
Ara | 3 | Ara | MULTILINESTRING ((-98.6514 … |
Ari | 1 | Aries | MULTILINESTRING ((42.496 27… |
Aur | 1 | Auriga | MULTILINESTRING ((89.8822 4… |
Boo | 1 | Boötes | MULTILINESTRING ((-153.1844… |
Cae | 3 | Caelum | MULTILINESTRING ((67.7087 -… |
These datasets originally feature interactive and adaptable constellation maps, initially curated by Olaf Frohn. However, some issues related to date lines and certain packages were identified in these datasets, and they were subsequently resolved by Dieghernan. You can explore the repository here.
Why did we choose this dataset?
As we explored various topics for a captivating visualization project using a Shiny app, we stumbled upon a fascinating reference that showcased creating city maps, which you can find here. Inspired by this, our interest evolved towards the idea of crafting a celestial map that would represent the skies above our location.
These datasets offer celestial visualizations based on longitude, latitude, and time parameters, granting us the ability to fashion dynamic and interactive sky maps.
Weekly “plan of attack”
Week | Assigned Team members | Weekly Tasks |
---|---|---|
Week 1-2: Understanding the Basics | Megan Hokama, Tejashwini Kasa |
|
Week 3: Creating the basis for celestial maps | Kiwoon Hong, Visalakshi Iyer |
|
Week 4: Creating the Star Map | Sai Madhuri Kandula, Tejashwini Kasa |
|
Week 5-6: Shiny App Development | Megan Hokama, Visalakshi Iyer |
|
Week 7: Testing and reviewing | Kiwoon Hong, Sai Madhuri Kandula |
|
Repo Organization
.github
: This directory contain files related to GitHub, such as workflows, issue templates, or other configurations._extra
: Contains code, notes and other files used during experimentation. Contents of this folder is not a part of the final output._freeze
: The folder created to store files generated during project render.data/
: This folder contains data files or datasets that are used in the project.README.md
: A readme file that describes the datasets in more detail.
images
: This folder contains image files that are used in the project, such as illustrations, diagrams, or other visual assets.analysis/
: This folder contains the analysis scripts used to generate output for the project outline.README.md: describes the steps to run and generate the results using scripts
functions_celestial_objects.qmd: Helper functions to generate celestial map for any given location and given time
imgs/: A folder containing the sample output of the plot generated from the code
starmapapp/
: This folder contains the code for GUI built using Shiny Appapp.R
: This file contains the code for Shiny App UI and Serverdata_transformation.R
: This file contains the code to transform the dataset into relevant simple feature objectshelper_functions.R
: This file contains the code to convert raw user input into celestial translation. For example converting date-time into MST lat-lon.plot_graphs.R
: This file contains the code for plotting functions
.gitignore
: This file specifies which files or directories should be ignored by version control.README.md
: This file usually contains documentation or information about the project. It’s often the first thing someone reads when they visit the project repository._quarto.yml
: This is a configuration file.about.qmd
: This quarto document contains the information about team members.index.qmd
: This quarto document contains the approach and analysis and results of the project.presentation.qmd
: It contains the slides for the presentation.proposal.qmd
: This quarto documents has the proposal of the project.project-final.Rproj
: This is an RStudio project file, which helps organize R-related files and settings for the project.