Skip to main content

Gorgeous and Captivating Visualization of air measurements data.

Project description

gcviz

Gorgeous and Captivating Visualization of air measurements data.

Description

This project aims to provide a user-friendly interface to visualize air measurements data. The data is collected from various sources and is stored in a database as netcdf files. The user can select the data source, the time period, and the type of visualization. The app will then display the data in an interactive and visually appealing way.

Features

The concept of different Views makes it easy to switch between different visualizations and to implement new ones. This makes gcviz a flexible tool that can be adapted to different needs.

Installation

From PyPi

To install the package from PyPi, run the following command:

pip install gcviz

From source

This is the recommended way if you want to contribute to the project.

First download the repository locally.

Then make sure you have python installed.

To install the required packages, run the following command:

pip install  -e .

This will install the package in editable mode, so you can make changes to the code and see the changes immediately.

Get the files

If you don't have a specific database to plot, a good start would be the AGAGE data archive, which is freely available: (https://agage2.eas.gatech.edu/data_archive/agage/)

There you should find a tar.gz file containing netcdf files, you can extract it and set the netcdf_directory parameter from the run_config.json file to the extracted folder.

Running the app

The main file is app.py which is a Dash app. To run the app, you need to have the following packages installed:

python -m gcviz.app

This will run your app on the localhost. You should be able to see a link in the terminal where you can access the app.

If you want to run your app on a local webserver, this is currently not supported.

Configuration

The configuration file is run_config.json. You can set the following parameters: All parameters are optional having default values, except for the netcdf_directory parameter.

  • netcdf_directory: the directory where the netcdf files are stored
  • logging: various parameters for logging
    • level: the logging level. Can be DEBUG, INFO, WARNING, ERROR, CRITICAL.
  • network: parameters for the network
    • host: the host (ip) of the network
    • port: the port of the network
  • data: parameters related to the data
    • invalid_values: a value for the missing data

Other parameters can be given in case some views require them.

If you want to run the app with a different config file, you can specify the path to the config file as an argument:

python app.py --config path/to/config.json

Implementing new views

To implement a new view, you should start by looking at the implemented views in the gcviz/views folder. You can create a new file in this folder and implement your view in a similar way.

The following applies to all views:

  • The view should be a instance of the View class.
  • You can create call backs that update your view. Look at existing callbacks for examples.
  • Your view can be added to gcviz by adding it in the run_config.json file.

Gcviz makes use of dash and plotly for the visualizations. You don't need to be an expert in these libraries to implement a new view. Following this tutorial should be enough: https://dash.plotly.com/tutorial

Contributing & Support

We are happy of any contributions. Please raise an issue or create a merge request.

Authors and acknowledgment

Thanks to all the contributors to this project.

See the list in the pyproject.toml file.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gcviz-0.0.1.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

gcviz-0.0.1-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

Details for the file gcviz-0.0.1.tar.gz.

File metadata

  • Download URL: gcviz-0.0.1.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.2

File hashes

Hashes for gcviz-0.0.1.tar.gz
Algorithm Hash digest
SHA256 056af2d56636b91859cad3203ee20b5a5935da641bb90ad99acd93832f3a45a5
MD5 e6080b81d86c01761b901d81aaed087a
BLAKE2b-256 5a86097bcf34058217f808c0252d0320267be96766e45e19a399225b264b842d

See more details on using hashes here.

File details

Details for the file gcviz-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: gcviz-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 18.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.2

File hashes

Hashes for gcviz-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b2ad9a5105c9d92c075bc1f376944ed0540da47278d88aff5fc83947f9b0813a
MD5 42a31d9e29e1f2d0d943ceeb63a61d39
BLAKE2b-256 265dd26a70e450f09a93593486745124b7c92cb2d1b35134aafbb7eee9f32260

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page