GithubHelp home page GithubHelp logo

nasa-pds / search-api-notebook Goto Github PK

View Code? Open in Web Editor NEW
3.0 9.0 3.0 104.71 MB

Jupyter notebooks for demonstrating and utilizing the Planetary Data System (PDS) Search API

License: Other

Jupyter Notebook 100.00%
pds jupyter python search api jupyter-notebook

search-api-notebook's Introduction

Planetary Data System API Notebook

This repository contains example JupyterLab notebooks for the application programmer's interface (API) of the Planetary Data System. You can incorporate these into your existing JupiyterLab notebooks for the plotting and exhibition of planetary and other scientific data, and use them as springboards for new notebooks. You can also run these notebooks directly on any Python-capable computer with a web browser.

๐Ÿ–ฅ Prerequisites

To run these notebooks locally, you'll need Python 3.7 or later as well as a web browser.

๐Ÿƒโ€โ™€๏ธ Getting Started

Run the following commands from a terminal and your default web browser should launch:

$ # Create a virtual Python environment to isolate Jupyter and PDS dependencies
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install --upgrade --quiet pip
$ # Install the dependencies
$ pip install --requirement requirements.txt
$ # Start it up
$ jupyter-lab

At this point you'll have a locally running JupyterLab server and your browser opened to it. (If not, point your browser to http://localhost:8888/lab).

From here, you can try out the PDS API notebooks in the /notebooks/ folder in the file tree on the left side:

  • ovirs contains demonstration notebooks for the OSIRIS-REx Visible and InfraRed Spectrometer, OVIRS. Within this folder are two sub-folders with the actual demonstration notebooks:
    • part1 has the notebook explore-a-collection.ipynb that shows how to get a get and explore a data collection with the API.
    • part2 has a notebook find-data-standalone.ipynb that extracts a specific data collection subset. A demo video of this notebook is available.
  • galileo magnetometer exhibits using PDS data in WWT via the PDS API. Run the following commands to configure your notebook to run pyWWT.
$ jupyter labextension install --no-build @jupyter-widgets/jupyterlab-manager
$ jupyter labextension install --no-build @wwtelescope/jupyterlab
$ jupyter lab build
$ # To start up 
$ jupyter-lab

Note that to interact with the pyWWT window, you must open a new tab in the jupyter notebook and select the AAS WorldWide Telescope icon. For further instructions and troubleshooting, see the pyWWT installation page.

๐Ÿ‘ฅ Contributing

Within the NASA Planetary Data System, we value the health of our community as much as the code. Towards that end, we ask that you read and practice what's described in these documents:

  • Our contributor's guide delineates the kinds of contributions we accept.
  • Our code of conduct outlines the standards of behavior we practice and expect by everyone who participates with our software.

๐Ÿ“ƒ License

The project is licensed under the Apache version 2 license.

search-api-notebook's People

Contributors

al-niessner avatar dependabot[bot] avatar jjacob7734 avatar joaq-ram avatar jordanpadams avatar nutjob4life avatar pdsen-ci avatar tloubrieu-jpl avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

search-api-notebook's Issues

Update OREX Notebook to use PDS4 Tools to read and visualize the data

Checked for duplicates

Yes - I've already checked

๐Ÿง‘โ€๐Ÿ”ฌ User Persona(s)

Data Engineer/ Data User

๐Ÿ’ช Motivation

...so that I can [why do you want to do this?]

๐Ÿ“– Additional Details

Instead of using the pandas library to grab the PDS4 data and import it into a data frame, we would like to implement the PDS4_tools library instead. This would simplify the code and provide additional examples for other users in using the PDS4 tools with the data base.

Acceptance Criteria

Given a data product
When I perform an import of the product
Then I expect a working dataframe from the pds4_tools

โš™๏ธ Engineering Details

will be using pds4_read() instead of pandas.read_fwf()

As a data user, I want to utilize pyWWT to visualize Jupiter's magnetopause

Checked for duplicates

Yes - I've already checked

๐Ÿง‘โ€๐Ÿ”ฌ User Persona(s)

Data Engineer/ Data User

๐Ÿ’ช Motivation

...so that I can better understand Galileo's magnetometer data

๐Ÿ“– Additional Details

Import a model of Jupiter's magnetopause into pyWWT as an accurate representation of the magnetopause geometry.

Acceptance Criteria

Given a 3D model of Jupiter's magnetopause
When I perform magnetometer reading visualization
Then I expect the 3D model to be displayed in the widget along side the magnetometer readings.

โš™๏ธ Engineering Details

Will require insight from the PPI team for the model creation. In the meantime a test case will be developed to demonstrate pyWWT's ability to visualize 3D models.

Develop notebook for Apollo Passive Seismic Experiment data

๐Ÿ’ก Description

From Francesco C.

  • I think that seismic data would be a good test case for cloud data operation and analysis. Specifically, Iโ€™m thinking the Apollo Passive Seismic Experiment data, which is currently hosted in PDS4 format at the Geosciences node.
  • Slots in well with the upcoming Farside Seismic Suite mission as well as Artemis.
  • I have algorithms already ready to go for data visualization, data extraction (via catalogs), analysis using signal processing, and machine learning signal detection (to test CPU vs GPU computing). Let me know if you want details and I can send you documents or some slides.

As a user, I want to retrieve and view IR/UV/Visual wavelength images

Checked for duplicates

No - I haven't checked

๐Ÿง‘โ€๐Ÿ”ฌ User Persona(s)

Data Engineer, Data User

๐Ÿ’ช Motivation

...so that I can demonstrate how to use the search API and analyze images provided a specified target, time range, wavelength,etc.

๐Ÿ“– Additional Details

Still need to find applicable data sets for this use case.

Acceptance Criteria

Given a target and wavelength specification
When I perform search in PDS
Then I expect to view data products related to my search specifications

โš™๏ธ Engineering Details

No response

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.