MAVEN Data Analysis and Visualization Toolkits · the MAVEN Science Data Center’s software page...

1
Introduction The Mars Atmospheric and Volatile Evolution (MAVEN) mission has been collecting data at Mars since September 2014. The MAVEN Science Data Center has developed software toolkits for analyzing and visualizing the science data. Our Data Intercomparison and Visualization Development Effort (DIVIDE) toolkit is written in IDL, and utilizes the widely used “tplot” IDL libraries. Recently, we have converted DIVIDE into Python in an effort to increase the accessibility of the MAVEN data. This conversion also necessitated the development of a Python version of the tplot libraries, which we have dubbed “Pytplot”. Python tplot Python tplot (or pytplot), is another command line tool that allows scientists to read in spacecraft data from a variety of missions, store the data in a common format, and create/customize multi-panel stacked plots with a common time axis showing important quantities that were measured simultaneously. The image below was generated using pytplot: The Pandas library is used to store the data, as their DataFrame object allows for easy data manipulation. The core plotting library used is Bokeh, an open source Python tool which ultimately uses JavaScript to generate HTML files of the plots. This allows a greater degree of interactivity with the plots, such as zooming, panning, and reading off data via mouseover. This software is heavily based on a set of routines written in IDL referred to informally as tplot” (short for “timeseries plot”). The IDL DIVIDE toolkit makes use of tplot, just as the Python DIVIDE toolkit (right) makes use of pytplot. Like IDL tplot, this library does not contain data readers, but will accept a variety of data structures as inputs to store data in the memory. Pytplot can, however, restore “.tplot” variables generated from IDL tplot. Additionally, the MAVEN Science Data Center has created a Python-native CDF file reader, available on our GitHub page. Links Python DIVIDE Toolkit The IDL DIVIDE toolkit has recently undergone an effort to be converted to Python. The goal of this endeavor was to maintain the functionality of the IDL DIVIDE toolkit, while also gaining the benefits that Python offers. The toolkit can be used in an IPython (interactive Python) environment, and commands typed into the console in a similar manner to IDL. It is also easy to import the functions into your own program to build custom applications. This toolkit utilizes the Pandas Python library to store the Key Parameter data in memory, and the pytplot library (described left), for the data visualizations. The software can be installed via PyPI (Python Package Index), with the command “pip install pydivide”. IDL DIVIDE Toolkit The DIVIDE toolkit is a software package of 25 different IDL procedures which allow general purpose analysis and visualization of the MAVEN data. The DIVIDE toolkit utilizes the MAVEN Key Parameters (KP) dataset, which is derived from the level 2 data from all instruments onboard the spacecraft. DIVIDE contains routines for: Downloading science data Reading the data into memory 1D, 2D, and 3D visualizations Manipulation of the data Comparisons of the spacecraft trajectory to MGITM and LATMOS models Adding user-generated time-dependent data to the memory, allowing use of the above routines with custom input Typically, the toolkit commands are accessed via the command line. We do however have a GUI for our 3D visualization routines, which can be seen to the left. DIVIDE can be installed by downloading a zip file on the MAVEN Science Data Center’s software page and adding the file’s contents to the IDL path. Why Python? Python is an open source language, and free to any user. The next generation of space scientists are likely to have experience in Python, due to its use in a variety of different fields. Additionally, Python has a large number of open source packages, making it likely new features can be incorporated in the future. Finally, Python has “bridge” features for several other programming languages such as Matlab and IDL. Therefore, scientists may be able to use these routines in conjunction with their own data analysis routines. Python DIVIDE toolkit: https://github.com/MAVENSDC/Pydivide MAVEN Data Analysis and Visualization Toolkits Alexandria DeWolfe, Bryan Harter, David Brain, Michael Chaffin Python tplot libraries: https://github.com/MAVENSDC/PyTplot MAVEN Science Data Center: https://lasp.colorado.edu/maven/sdc/

Transcript of MAVEN Data Analysis and Visualization Toolkits · the MAVEN Science Data Center’s software page...

Page 1: MAVEN Data Analysis and Visualization Toolkits · the MAVEN Science Data Center’s software page and adding the file’s contents to the IDL path. Why Python? Python is an open source

Introduction

The Mars Atmospheric and Volatile Evolution (MAVEN) mission has been collecting data at Mars since September 2014. The MAVEN Science Data Center has developed software toolkits for analyzing and visualizing the science data. Our Data Intercomparison and Visualization Development Effort (DIVIDE) toolkit is written in IDL, and utilizes the widely used “tplot” IDL libraries. Recently, we have converted DIVIDE into Python in an effort to increase the accessibility of the MAVEN data. This conversion also necessitated the development of a Python version of the tplot libraries, which we have dubbed “Pytplot”.

Python tplot

Python tplot (or pytplot), is another command line tool that allows scientists to read in spacecraft data from a variety of missions, store the data in a common format, and create/customize multi-panel stacked plots with a common time axis showing important quantities that were measured simultaneously. The image below was generated using pytplot:

The Pandas library is used to store the data, as their DataFrame object allows for easy data manipulation. The core plotting library used is Bokeh, an open source Python tool which ultimately uses JavaScript to generate HTML files of the plots. This allows a greater degree of interactivity with the plots, such as zooming, panning, and reading off data via mouseover.

This software is heavily based on a set of routines written in IDL referred to informally as “tplot” (short for “timeseries plot”). The IDL DIVIDE toolkit makes use of tplot, just as the Python DIVIDE toolkit (right) makes use of pytplot.

Like IDL tplot, this library does not contain data readers, but will accept a variety of data structures as inputs to store data in the memory. Pytplot can, however, restore “.tplot” variables generated from IDL tplot. Additionally, the MAVEN Science Data Center has created a Python-native CDF file reader, available on our GitHub page.

Links

Python DIVIDE Toolkit

The IDL DIVIDE toolkit has recently undergone an effort to be converted to Python. The goal of this endeavor was to maintain the functionality of the IDL DIVIDE toolkit, while also gaining the benefits that Python offers.

The toolkit can be used in an IPython (interactive Python) environment, and commands typed into the console in a similar manner to IDL. It is also easy to import the functions into your own program to build custom applications.

This toolkit utilizes the Pandas Python library to store the Key Parameter data in memory, and the pytplot library (described left), for the data visualizations. The software can be installed via PyPI (Python Package Index), with the command “pip install pydivide”.

IDL DIVIDE Toolkit

The DIVIDE toolkit is a software package of 25 different IDL procedures which allow general purpose analysis and visualization of the MAVEN data. The DIVIDE toolkit utilizes the MAVEN Key Parameters (KP) dataset, which is derived from the level 2 data from all instruments onboard the spacecraft. DIVIDE contains routines for:

• Downloading science data• Reading the data into memory • 1D, 2D, and 3D visualizations• Manipulation of the data • Comparisons of the spacecraft trajectory to MGITM

and LATMOS models• Adding user-generated time-dependent data to the

memory, allowing use of the above routines with custom input

Typically, the toolkit commands are accessed via the command line. We do however have a GUI for our 3D visualization routines, which can be seen to the left.

DIVIDE can be installed by downloading a zip file on the MAVEN Science Data Center’s software page and adding the file’s contents to the IDL path.

Why Python?

Python is an open source language, and free to any user. The next generation of space scientists are likely to have experience in Python, due to its use in a variety of different fields. Additionally, Python has a large number of open source packages, making it likely new features can be incorporated in the future. Finally, Python has “bridge” features for several other programming languages such as Matlab and IDL. Therefore, scientists may be able to use these routines in conjunction with their own data analysis routines.

Python DIVIDE toolkit:https://github.com/MAVENSDC/Pydivide

MAVEN Data Analysis and Visualization ToolkitsAlexandria DeWolfe, Bryan Harter, David Brain, Michael Chaffin

Python tplot libraries:https://github.com/MAVENSDC/PyTplot

MAVEN Science Data Center:https://lasp.colorado.edu/maven/sdc/