Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/megbedell/astro-dataviz
demos of interactive data viz packages with astronomical data
https://github.com/megbedell/astro-dataviz
altair astronomy bokeh data-visualization matplotlib-animation
Last synced: about 13 hours ago
JSON representation
demos of interactive data viz packages with astronomical data
- Host: GitHub
- URL: https://github.com/megbedell/astro-dataviz
- Owner: megbedell
- License: mit
- Created: 2018-05-12T15:57:31.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2018-05-16T20:44:23.000Z (over 6 years ago)
- Last Synced: 2023-04-09T14:49:31.586Z (almost 2 years ago)
- Topics: altair, astronomy, bokeh, data-visualization, matplotlib-animation
- Language: Jupyter Notebook
- Size: 1.13 MB
- Stars: 7
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
This repository contains some IPython worksheets designed to demonstrate the relative capabilities of a few interactive plotting modules in python. These worksheets were made by Megan Bedell.
Slides for a companion talk can be found [here](https://docs.google.com/presentation/d/1sGvM4S9nQByNv3_1aj4nH5ynvp_pQt5MI1hk7djMcwk/edit?usp=sharing).
## Contents
The `animated_cepheids.ipynb` notebook shows how to make animated gifs or movies with matplotlib. As an example, we make a (somewhat cartoony) illustration of how Cepheid variable stars change in brightness over time using Gaia DR1 measurements.
The `interactive_exoplanets.ipynb` notebook demonstrates interactive plotting (tooltips, scroll and zoom, cross-linking plots, etc) with bokeh and altair. In this example, we use properties of confirmed exoplanets to make a mass-radius diagram.
The `interactive_gaia.ipynb` notebook ~~scales this up to large datasets with vaex and holoviews~~ is an unfinished look at using vaex and holoviews to view Gaia data. Although it's not extremely usable at the moment, it does contain links to other tutorials that may be helpful.
## Required software
These notebooks run with Python 3 and [Jupyter notebooks](http://jupyter.org/).
To run `animated_cepheids.ipynb` you'll just need a basic scientific stack (numpy, matplotlib, pandas) and astroquery. All of these are easy to install with pip.
To run `interactive_exoplanets.ipynb` you'll additionally need bokeh and altair, also available with pip:
```
pip install bokeh altair
```If you're going to run from a notebook, you're good to go. If you want to run in Jupyter Labs you'll need an extension to make the bokeh plots render:
```
jupyter labextension install jupyterlab_bokeh
```Note that altair is recommended for use with Jupyter Labs, but it still works in a notebook (with one extra line of setup code).
For `interactive_gaia.ipynb`, you'll need holoviews and vaex. The installation for these is more complex and has the potential to interfere with your normal python environment. One good way of installing is using [Anaconda distribution](http://continuum.io/downloads) and creating a virtual environment in which to install these packages. Here's a snippet of code to do this:
```
conda create -n dataviz_env python=3.6
source activate dataviz_env
pip install jupyterlab pandas astropy
conda install -c conda-forge vaex
conda install -c conda-forge holoviews
```(Some of the conda installs can be done in pip too, but I ran into install issues there that didn't come up with conda. Your mileage may vary.)
Then get the JupyterLab extension for holoviews:
```
jupyter labextension install @pyviz/jupyterlab_holoviews
```## Using these notebooks
Download this repository by running:
```
git clone https://github.com/megbedell/astro-dataviz
```Then go into the `astro-dataviz` directory and start a Jupyter notebook server:
```
jupyter notebook
```Click on a notebook file to run it.