Giter Site home page Giter Site logo

bhoov / june-vis Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 0.0 12.45 MB

Visualization for the JUNE epidemic and intervention simulation tool

Home Page: https://bhoov.github.io/JUNE-vis

License: Apache License 2.0

Jupyter Notebook 12.29% Python 14.39% Makefile 0.39% JavaScript 0.08% HTML 0.67% Vue 52.13% TypeScript 20.06%
simulation visualization covid covid-19 epidemic-model epidemics

june-vis's Introduction

JUNE-vis

A dashboard to visualize the JUNE simulation results for epidemic modeling and intervention

Install

pip install junevis

Serve the Example Project

This code ships with an example project (mask_wearing) for the interface. From the command line, run:

junevis_serve

Add new simulation results to JUNE-vis

The JUNE simulation logs events as they occur into hdf5 files called records. These are transformed into csv files called summaries that are automatically placed into a folder the frontend interface can serve. To create a new visualization from a simulation,

junevis_create path/to/folder/containing/records

For more details on the expected contents of this folder, see this documentation.

Changing the homepage

You will need to clone the source code if you want to change the landing page to describe the set of simulation results deployed. The file to change is in junevis/client/src/views/Intro.vue (this is a .vue file that contains all the needed HTML, CSS, and javascript).

After cloning and making your desired changes, from this project's root:

pip install -e .
cd junevis/client
npm install
npm run build
junevis_serve

Deploying

You can easily host this for others to see by running junevis_serve and exposing (default port) 8000.

Walkthrough

The Explore Page

The parameter selection grid

Choose which runs to compare across a single dimension:

Parameter Selecting on the Exploration Page

The parameter grid (left) is designed so you can view a single simulation by clicking on a valid combination of hyperparameter values. Alternatively, you can highlight all the values of the hyperparameters by clicking on the name of the hyperparameter to compare simulations accross all values of that dimension.

A card and SIR cruve for every simulation

Every run is associated with a set of hyperparameters. Its effect can be summarized with an SIR curve, shown as the thumbnail:

SIR Cards on the Explore Page

The Detailed Comparison Page

Sometimes we want to compare simulations across more subtle effects, such as the difference in where the infections occurred, shown below:

Comparing the Location Details of 2 runs

You can add any additional plot here to compare between two simulations. Included are SIR curve, ages of the infected, the locations of infection, and a detailed geography overview:

Comparing the Geography Details of 2 runs

The slider will color the background of each region according to the selected dimension at that point in time.

The Geography Overview

To see the geographical effects of all simulations at once, we include a special page to sort and observe the peak value at each location for the course of a simulation:

Overview of Geography

Known Bugs

  • Rendering the geojson associated with the map of England does not work
  • Creating a new project using the PyPI package will overwrite existing projects. We need to move processed projects into a configuration folder in the home directory and symbolically link them to the client

june-vis's People

Contributors

bhoov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

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.