Celestial Convergence: Echoes of Impact and Revelation

An Interactive Visualization of Meteorites

Author

Data Dynamos

Installed Packages
# GETTING THE LIBRARIES
if (!require(pacman))
  install.packages(pacman)

pacman::p_load(dplyr,
               dlookr,
               tidyverse,
               ggplot2,
               here,
               janitor
)

Overview

Creation of an interactive application for visualization of meteor landings and visualize the location of asteroid impact on Earth, based on NASA’s asteroid data set.

Did You Know?

Did you know that Tucson, Arizona, stands as a pivotal hub for celestial revelations? Its pristine skies and cutting-edge observatories serve as crucial elements in discerning the trajectories and impact patterns of these cosmic entities.

Introduction

In the boundless expanse of the solar system, a hidden universe of rocky wanderers awaits for exploration. The secrets to solving the riddles surrounding the genesis and evolution of the solar system can be found within these space nomads, also known as meteorites, which are frequently written off as nothing more than stray pieces of a chaotic universe. In this project, we aim to create an interactive website to examine the meteorites impacts on Earth identified by Research centers.

For countless years, astrophysicists and enthusiasts have been enthralled with the fascinating universe of meteorites. These cosmic nomads captivate us with their enduring mystique; they are frequently perceived as leftovers of the birth of our solar system. This topic is brought to light by the enigmatic nature of meteorites and the mysteries they hold that have not yet been discovered. Motivated by the universe’s fascination and secrets, our research team discovered a shared passion for investigating the meteorites impact. It will provide a unique opportunity to look into the frequencies of these impacts and learn more about them.

Project Overview

The website will serve as an educational and exploratory tool for both astronomy enthusiasts and the general public. It will feature interactive visualizations that allow users to explore various aspects of the impacted meteorites.

Data Utilization

The NASA data portal is the source of the Meteorite Landings data set for the project. Collected by Javier de la Torre, this dataset is accessible in Fusion Table and XLS formats, documenting 34,513 meteorites and encompassing essential fields crucial for analysis and exploration purposes. The dataset provides information about meteorites, featuring details such as their names, IDs, name types, recclass, masses (in grams), fall occurrences, discovery years, reclat (latitude of the landing site), relong (longitude of the landing site), and precise geolocations.

Data Link: https://data.nasa.gov/Space-Science/Meteorite-Landings/gh4g-9sfh

Backup data file
# Reading the data using read_csv
meteorite <- read_csv(here("data", "Meteorite_Landings.csv"))

head(meteorite)
# A tibble: 6 × 10
  name        id nametype recclass    `mass (g)` fall   year reclat reclong
  <chr>    <dbl> <chr>    <chr>            <dbl> <chr> <dbl>  <dbl>   <dbl>
1 Aachen       1 Valid    L5                  21 Fell   1880   50.8    6.08
2 Aarhus       2 Valid    H6                 720 Fell   1951   56.2   10.2 
3 Abee         6 Valid    EH4             107000 Fell   1952   54.2 -113   
4 Acapulco    10 Valid    Acapulcoite       1914 Fell   1976   16.9  -99.9 
5 Achiras    370 Valid    L6                 780 Fell   1902  -33.2  -65.0 
6 Adhi Kot   379 Valid    EH4               4239 Fell   1919   32.1   71.8 
# ℹ 1 more variable: GeoLocation <chr>
Extracting relevant information from dataset
#Extracting relevant columns from data
meteorite <- subset(meteorite, select = -c(nametype, fall))
diagnose(meteorite)
# A tibble: 8 × 6
  variables   types     missing_count missing_percent unique_count unique_rate
  <chr>       <chr>             <int>           <dbl>        <int>       <dbl>
1 name        character             0           0            45716     1      
2 id          numeric               0           0            45716     1      
3 recclass    character             0           0              455     0.00995
4 mass (g)    numeric             131           0.287        12577     0.275  
5 year        numeric             291           0.637          266     0.00582
6 reclat      numeric            7315          16.0          12739     0.279  
7 reclong     numeric            7315          16.0          14641     0.320  
8 GeoLocation character          7315          16.0          17101     0.374  

From the above, we are going to use the `name`, `id`, `mass` to calculate the diameter of crater, `year` to create an interactive map visualization, `geolocation` to plot the location of the impact on a map plot.

Goal

This project aims to create an interactive website, focusing on the visualization of data from asteroid impact discoveries, as detailed in the data set “Meteorite Landings” (DATA_SET_ID: Meteorite Landings) in NASA.

Proposed Features:

1. Timeline Visualization:

An interactive timeline will showcase the dates of Meteorite discoveries. Users can slide through time to see the varying trends in meteorite impacts over the years.

2. Map integration:

Utilizing the geo-location data, we will provide a map visualization where users can zoom in to the sites, providing a spatial context to the data.

3. Asteroid Details:

By selecting individual meteorite, users will be able to view detailed information including the position, names, crater diameter and class of the asteroid.

4. R Shiny app development:

Integrating and rendering of these asteroid impact for a more user friendly design and visualization. This will be useful for easy comprehension and accessibility to the general public.

5. Educational Information:

The website will also include educational resources about meteorite, their significance in our solar system, and the history of asteroid discovery in Tucson.

Plan of attack:

We want to visualize how the meteorite impact has changed over the years. To represent the available data best, we will be creating a geom map of the world that displays the impacts of various meteorite across the world. The comparison of the plot will be done through for each year from year 860 to year 2101 (in the future). We are planning to clean it further to only get certain parts that are required using `dplyr`. Additionally, data cleaning and preparation will be performed in order to account or omit the missing data.

1. Data Load: The shiny package enables the creation of interactive web applications, with leaflet being a powerful tool for handling spatial data visualizations. sf is used for working with spatial data objects, and shinythemes provides a range of Bootstrap themes for customization.

2. Creating Shiny UI: We will define the user interface (UI) of the Shiny app. In this step, we will choose a Bootstrap theme using shinythemes to enhance the overall visual appeal. We will add a title panel and navbar for easy navigation between different sections of your app. Inclusion of custom styling will be performed, such as changing the navbar color, can be achieved using additional HTML and CSS.

3. Create Shiny app server: Develop the server logic for your Shiny app. In this approach, we will use the leaflet package to create an interactive map displaying asteroid impact data. The renderleaflet function generates the leaflet map dynamically based on the input data. Additional server logic will be added to handle interactions and updates as users interact with the app.

4. Adding branding and responsive design: Enhance the app’s aesthetics by incorporating branding elements. Adjust the navbar styling to ensure consistent color schemes and improve overall branding. Additionally, we will ensure that the app has a responsive design, making it accessible and visually appealing across various devices and screen sizes. This can be achieved through Bootstrap’s inherent responsiveness and further customizations.

5. Running Shiny app: Saving of shiny app code in a script file (e.g., “app.R”) and run it using the runApp("app.r") command. This will launch a local web server and open the app in your default web browser.

Plan Of Attack

  • Week 1: (Data gathering and preparation)

    • Deema & Shakir - Data gathering from the NASA website for meteorite and data validation of all relevant variables.
    • Ansh & Rahul - Begin the initial data cleaning process.
    • Swati - Create a shared repository or document to organize the collected data efficiently.
    • Everyone - Document the sources and formats of the collected data sets.
  • Week 2: (Data Exploration and Visualization)

    • Everyone - Analyse the cleaned data set to understand its structure.
    • Shakir, Ansh & Deema - Begin the process of designing the initial map visualizations of meteorites’ positions.
    • Swati & Rahul - Experiment with basic visualization techniques and work on creating visual representations.
  • Week 3: (Interactive Features Development)

    • Shakir, Ansh & Deema - Work on data integration for the interactive features within the visualization.
    • Swati & Rahul - Try and implement additional enhancement features for the interactive plot.
    • Everyone - Perform initial rounds of testing to validate the data from user perspective.
    • Swati & Ansh - Peer review code and ensure smooth operation.
    • Everyone - Dynamically come up with ways (ideas) to make the user experience better.
  • Week 4: (Testing, Refinement, and Documentation)

    • Everyone - Address any issues or bugs identified during testing.
    • Shakir, Swati & Ansh - Enhance the aesthetics and user experience of the map visualizations based on user feedback.
    • Rahul & Deema - Work on final testing and quality assurance to guarantee a bug-free release. Host the project as a GitHub page and ensure no render issues.
    • Everyone - Write comprehensive guide and complete documentation for the project in GitHub.
    • Everyone - Work on final project presentation.

Organization

The following are the folders involved in the Project repository.

  • ‘data/’: Used for storing any necessary data files for the project, such as input files.

  • ‘images/’: Used for storing image files used in the project.

  • ‘_extra/’: Used to experiment on analysis which won’t impact our project workflow.

  • ‘_freeze/’: This folder is used to store the generated files during the build process. These files represent the frozen state of the website at a specific point in time.

  • ‘.github/’: Folder for storing github templates and workflow.

Conclusion

This interactive website will not only fulfill the requirements for our final project but also serve as a bridge between historical astronomical data and modern-day data visualization techniques. It will contribute to the greater public understanding of the trends in asteroid impact and the importance of data visualization in narrating the story of our sky.

Note:

These are the planned approaches, and we intend to explore and solve the problem statement which we came up with. Parts of our approach maychange in the final project.