Code Monkey home page Code Monkey logo

sagarlimbu0 / oco2-oco3 Goto Github PK

View Code? Open in Web Editor NEW
20.0 2.0 6.0 1.36 GB

For public accessibility and data visualization, a beginner-level tutorial is available for users interested in exploring the OCO2 and OCO3 data.

Home Page: https://www.youtube.com/watch?v=2ZILcjYB9Fk&list=PLVvd_IdJOr_d4uVUmr_wWTUN_bJiYFxtT&index=15&t=2s

License: MIT License

Jupyter Notebook 99.98% Python 0.02% Shell 0.01% Dockerfile 0.01%
data-visualization oco2 python oco3 jpl nasa

oco2-oco3's Introduction

OCO2-OCO3

Arset 2022_Training

  • Sagar Limbu
  • Mentors: Karen Yuen and Charles Thompson OCO2_OCO3

OCO2 is the first dedicated satellite to study Carbon Dioxide launched in July 2, 2014 and OCO3 is the sister of OCO2 because it has similar instrument sensitivity and performance characteristics to OCO2. When flying a payload on the International Space Station (ISS), the OCO3 mission was designed to fly with the flight spare. This means we have 2 of the same instruments that is currently flying and since they fly differently - polar orbit versus a processing orbit This is really fantastic opportunity for science because It really permits NASA to study CO2 over different areas of the globe.

Google Collab Demo; Data visualization of xco2

  • Users are encouraged to revisit this section after completing the tutorials and attempt to execute the provided script on Google Colab.
  • Execute the Google Colab script to gain access to OCO data from the PyDAP server. Subsequently, we may utilize the carbon footprint vertices for visualization purposes within a specified geographic region.

Google Colab

Table of Contents:

  1. Accessing the OCO2/OCO3 Datasets
  2. Data Pre-processing
  3. Data Visualization
  4. Setup environment using Docker
  5. Demonstration

1. Accessing the OCO2/OCO3 Datasets

  • In this tutorial, we will guide you through the process of using a Python script. We'll assume that you have some basic programming knowledge.
  • To download OCO2/OCO3 data files from the Earth Data Search website, you can follow these steps: First, access the Earth Data Search website and navigate to the OCO2/OCO3 dataset of interest. Then, specify your search criteria such as time range, geographical area, and data product type. You may need to log in or create an account if prompted. Finally, follow the on-screen instructions to complete the download process, and once the files are downloaded, they can be accessed and utilized for further analysis or visualization.
  • Prior to proceeding with this tutorial, users can visit the following hyperlink. Within the EarthData platform, a variety of Data Application tools are available for access. Each of these data tools is designed to perform distinct functions, encompassing search criteria utilization, data handling, subsetting and filtering, as well as data visualization and analysis capabilities.
  • (Ctrl + Click) Data Tools provided by EarthData
  • (Ctrl + Click) EarthDataSearch: FAQ

1.b. Getting Data Access via APIs

  • The Earthdata Developer Portal serves as a hub for application developers interested in constructing software applications for searching, accessing, and exploring Earth science data hosted by EOSDIS
  • (Ctrl+click) earthdataAPI
  • Below example demonstrates the API access to OpenDAP using pydap tool (client/server software). Above Google collab demonstrates similar example.
    • Eg: with python's pydap we can request to get access the OCO2 datasets using credentials from EarthData login: (Ctrl + Click) using openDap

2. Data Pre-processing

  • primary data format for OCO2/OCO3 is netCDF4, affording users the capability to generate visualizations through software tools such as Panalopy, QGIS, and ArcGIS directly
  • For enhanced accessibility, netCDF files can also be converted into CSV format, providing users with a more straightforward means of data manipulation and analysis. Additionally, for the purpose of optimizing scalability and conserving storage space, the option to save files in the parquet format is also available.
    • Converting netCDF files to CSV format (Ctrl + Click)netCDF->csv
    • Converting netCDF files to parquet format (Ctrl + Click)netCDF->parquet
  • Other GIS software tools:

3. Data Visualization

3.a Single day file

  • (Ctrl + Click) Arset Tutorial 2022
  • Utilization of the ARSET training script facilitates the visualization of OCO2/OCO3 data for a single day file, showcasing its practical application.
  • Libraries:
    • netCDF, pandas, numpy, matplotlib, pydap, plotly, Basemap, seaborn
    • dask // to perfrom data aggregation and data-preprocessing

3.b Multiple files

4. Setup environment using Docker

  • Docker-Based Environment Setup: To facilitate the installation of the necessary packages and libraries, the deployment of Docker containers is recommended. This approach streamlines the environment configuration process and ensures consistent dependencies.
  • Containerization as Docker Image: For further versatility, the environment can be containerized into a Docker image. This Docker image can subsequently be deployed as a web application or a Jupyter server on Amazon Web Services (AWS). Comprehensive guidelines on these deployment processes can be found within the repository documentation, offering in-depth insights into the steps required for successful implementation.
  • These procedures enhance the efficiency and reproducibility of the environment setup, enabling the seamless installation of essential components while providing flexibility in deploying the system as a web application or Jupyter server via AWS infrastructure. Further details are available in the repository documentation for comprehensive guidance.
  • (Ctrl + Click) Setting-up-Environment

5. Demonstration of XCO2 using vertices (OCO2/OCO3)

The principal aim of this project is to present data points representing XCO2 and illustrate their temporal evolution, thereby offering insight into the variability of the atmospheric carbon cycle for a specified year. In this context, the project utilizes the "vertices" attributes of carbon footprints to generate polygonal shapes, facilitating the visualization of carbon footprint patterns.

target region: San Francisco

alt_text

Global Scale of XCO2 seasonality trends

alt text

OCO2, XCO2 variation by months

OCO2 data representing the variation of XCO2 by different years. THe visualization built on R code located inside ARSET/ directory representing the california region. NOTE: OCO2 launched on 2014 July, so for this reason the plots displayed in the later months.

alt text

  • for any questions, please raise issue in this repository. Thanks

oco2-oco3's People

Contributors

sagarlimbu0 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

oco2-oco3's Issues

Pre-built Path for OCO2 files

Hi Sagar,

I'm looking at the notebook Conversion of NETCDF to csv. Do you mind helping me with the directory you used to make the pre-built paths. Thanks

A problem about converting necCDF to CSV files

Hello, thank you for your method and code for 'Convert_netCDF_to_CSV_files'. My operating system is Win10 and I have a problem when I try to convert nc4 files to csv files. Everything is normal before the last step. After defining the convert function named 'convHdf', I used this function to my own files, but my computer gave an error: PermissionError: [Errno 13] Permission denied: b'F:/test'. I used some methods, but still haven't eliminated the problem. Do you know how to solve this problem?Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.