Skip to main content

Python interface to LavaVu OpenGL 3D scientific visualisation utilities

Project description

# logo

Build Status Deploy Status DOI Binder

A scientific visualisation tool with a python interface for fast and flexible visual analysis.

Documentation available here LavaVu Documentation

examplevis

LavaVu development is supported by ACCESS-NRI. Prior development was funded by the Monash Immersive Visualisation Plaform at Monash eResearch and the Simulation, Analysis & Modelling component of the NCRIS AuScope capability.

The acronym stands for: lightweight, automatable visualisation and analysis viewing utility, but "lava" is also a reference to its primary application as a viewer for geophysical simulations. It was also chosen to be unique enough to find the repository with google.

The project started as a replacement rendering library for the gLucifer1 framework, visualising geodynamics simulations. The new OpenGL visualisation code was re-implemented as a more general purpose visualisation tool. gLucifer continues as a set of sampling tools for Underworld simulations as part of the Underworld2 code. LavaVu provides the rendering library for creating 2d and 3d visualisations to view this sampled data, inline within interactive Jupyter notebooks and offline through saved visualisation databases and images/movies.

As a standalone tool it is a scriptable 3D visualisation tool capable of producing publication quality high res images and video output from time varying data sets along with HTML5 3D visualisations in WebGL. Rendering features include correctly and efficiently rendering large numbers of opaque and transparent points and surfaces and volume rendering by GPU ray-marching. There are also features for drawing vector fields and tracers (streamlines).

Control is via python and a set of simple verbose scripting commands along with mouse/keyboard interaction. GUI components can be generated for use from a web browser via the python "control" module and a built in web server.

Widgets for interactive use in the Jupyter notebook environment allow use for remote visualisation, eg: on supercomputing environments.

A native data format called GLDB is used to store and visualisations in a compact single file, using SQLite for storage and fast loading. A small number of other data formats are supported for import (OBJ surfaces, TIFF stacks etc). Further data import formats are supported with python scripts, with the numpy interface allowing rapid loading and manipulation of data.

This repository

This is the public source code repository for all development on the project. Development happens in the "master" branch with stable releases tagged, so if you just check out master, be aware that things can be unstable or broken from time to time.

How do I get set up?

It's now in the python package index, so you can install with pip:

python -m pip install lavavu

Currently binary wheels are provided for Linux x86_64, MacOS x86_64 and ARM64 and Windows x86_64.

To try it out:

python
> import lavavu
> lv = lavavu.Viewer() #Create a viewer
> lv.test()            #Plot some sample data
> lv.interactive()     #Open an interactive viewer window

Alternatively, clone this repository with git and build from source:

  git clone https://github.com/lavavu/LavaVu
  cd LavaVu
  python -m pip install .

or

  make -j4

If all goes well the viewer will be built, try running with: ./lavavu/LavaVu

Dependencies

  • OpenGL and Zlib, present on most systems, headers may need to be installed
  • To use with python requires python 3.6+ and NumPy
  • For video output, requires: PyAV or for built in encoding, libavcodec, libavformat, libavutil, libswscale (from FFmpeg / libav)
  • To build the python interface from source requires swig (http://www.swig.org/)

Who do I talk to?

For further documentation / examples, see the online documentation

Included libraries

In order to avoid as many external dependencies as possible, the LavaVu sources include files from the following public domain or open source libraries, many thanks to the authors for making their code available!


1 Stegman, D.R., Moresi, L., Turnbull, R., Giordani, J., Sunter, P., Lo, A. and S. Quenette, gLucifer: Next Generation Visualization Framework for High performance computational geodynamics, 2008, Visual Geosciences
2 Ruijters, Daniel & ter Haar Romeny, Bart & Suetens, Paul. (2008). Efficient GPU-Based Texture Interpolation using Uniform B-Splines. J. Graphics Tools. 13. 61-69.

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

lavavu-1.9.10.tar.gz (3.3 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

lavavu-1.9.10-cp313-cp313-win_amd64.whl (30.0 MB view details)

Uploaded CPython 3.13Windows x86-64

lavavu-1.9.10-cp313-cp313-manylinux_2_28_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

lavavu-1.9.10-cp313-cp313-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

lavavu-1.9.10-cp313-cp313-macosx_10_13_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

lavavu-1.9.10-cp312-cp312-win_amd64.whl (30.0 MB view details)

Uploaded CPython 3.12Windows x86-64

lavavu-1.9.10-cp312-cp312-manylinux_2_28_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

lavavu-1.9.10-cp312-cp312-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

lavavu-1.9.10-cp312-cp312-macosx_10_13_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

lavavu-1.9.10-cp311-cp311-win_amd64.whl (30.0 MB view details)

Uploaded CPython 3.11Windows x86-64

lavavu-1.9.10-cp311-cp311-manylinux_2_28_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

lavavu-1.9.10-cp311-cp311-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

lavavu-1.9.10-cp311-cp311-macosx_10_9_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

lavavu-1.9.10-cp310-cp310-win_amd64.whl (30.0 MB view details)

Uploaded CPython 3.10Windows x86-64

lavavu-1.9.10-cp310-cp310-manylinux_2_28_x86_64.whl (21.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

lavavu-1.9.10-cp310-cp310-macosx_11_0_arm64.whl (1.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

lavavu-1.9.10-cp310-cp310-macosx_10_9_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file lavavu-1.9.10.tar.gz.

File metadata

  • Download URL: lavavu-1.9.10.tar.gz
  • Upload date:
  • Size: 3.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for lavavu-1.9.10.tar.gz
Algorithm Hash digest
SHA256 8dbaf58ecaa293f62cefbb13c34cc07c8c13ae98b9c93ec5ece141b3d9c873d3
MD5 0fdfe215b0174aee4284cefe12732aaf
BLAKE2b-256 24423a302972ccc6bab68738f07388056323c6df12e408f3f5102d96aefa0b4a

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10.tar.gz:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: lavavu-1.9.10-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 30.0 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for lavavu-1.9.10-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 74d38b8bf459326b302c8a06a26ee460672cec0f5161c40fb2c1f9b6caff4e8c
MD5 b9d986a177d8bde00bdcaf5ebc43ae95
BLAKE2b-256 93e837584c62bf84092a1e2a2f38da97fcbdffee2345f46eb002c3c90e38c778

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp313-cp313-win_amd64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e4d940943d12ceb9343c28258d8be5cd78af45a5a53134b08587504b1fcd7423
MD5 d60a2a3d70b0f44cc8a529db3ccfcff9
BLAKE2b-256 32816e776b9992b9f5be727727bf903f0baaceb1abb30a8d3914a0882930aaa5

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 73e37b35403ff3853e8114fb3d62d9922046d9e7f4245044ff047605583efcdb
MD5 b1f2a7cbd3e74160892887257fc3bb32
BLAKE2b-256 d45a5fb6052f01102677577dd4776d3a880e8b4de5eede67d99e7e8c4b12e4e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4f8e702a6f24326289a782a297f71e6847a13cbcb453eada5b5f4b1051ba3107
MD5 8451896981c23156aada69890a7c78ba
BLAKE2b-256 3e59297be717e81f3f287c39ff0bd2aebb63f026d38c31823a94b427086d6489

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: lavavu-1.9.10-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 30.0 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for lavavu-1.9.10-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 fe5f75e06471346fdba32edb572942a87aa57d6aab03e02d4584d9b7eaa7d0d1
MD5 9d1c558c3343a62084862a93d2dbb103
BLAKE2b-256 9b07f1fc520c400a9dfe357c31d1080594c7baaa9d17ba9f05c3eb1509740d66

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp312-cp312-win_amd64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ac9c0c4e0fe085d0a4e3bdb28147ca643b6754076d4f0e27b96c154e677bd57a
MD5 e8067b88498e9670d35fd0d1363bc82b
BLAKE2b-256 b8c1ad51336a39919be7b288498aed098029b948c2f4a38192b339b7d2cbcf8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e0bb7302423e9ca469fe01f281eba2522e66c9075e536b732c6caa23f6a75105
MD5 9d104e2701af766df7b0b7ec30d65e8e
BLAKE2b-256 ef032fe623ca3b1f0735d80241c8feef6f26b15ea8871347c1a5c974e0164a81

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 6d05f4723313d2130de4d3036d5a08d7cb7f9e0e8eb43c7797a4b056e24c71d2
MD5 3d96c713c2cecb00cf117a0458b47959
BLAKE2b-256 1f8fd8c9a970bcd67d094dd5f82f99b8ac0e5f260d86c4822ac3116d8968bced

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: lavavu-1.9.10-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 30.0 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for lavavu-1.9.10-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c09f121b91adf6a94ff526ad610fbd9daf1a324086dc4a183f9394f6836b5ca9
MD5 1c30595d53795aa50e615b28b4644bf9
BLAKE2b-256 2678120f5fcb2de7fb00c93125a22debab42f40779e943f3d0ee0b280c500ab1

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp311-cp311-win_amd64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d5f2c18de3d94434c381ad3d350916a0f27a2502d51f7c8226c5c96bb1e52170
MD5 14c6ae6c89f134492b58c0a6e1a921a4
BLAKE2b-256 bfc6a212ed0d90d922291901b121b8503141c80a94d9e4d67fc7bb443dfb5295

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e34a61ec0bae9b137dade1da531125aba237fb95267a60c27b2fbc4f61d20cd7
MD5 b7c7537e2ab78b53f17029c34f2a3752
BLAKE2b-256 d97094c8c389ffafedd5bb8ca0ac4837212e939a96a626b1c8841f7ac6f63925

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b01ba0f499f23232c46ec66bf11fad4b4eca87da3533ba5c6270855f2e3ce749
MD5 09a72f9f84db5606471a8906a195cfaf
BLAKE2b-256 68cdd60c10d78c9de698631182d4f94f4ec7327add4bf8aa2bbc465247a9db70

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: lavavu-1.9.10-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 30.0 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for lavavu-1.9.10-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 021c7326fe1d7a410e8a966dfeff297a2307acb792aa36bef9fb050bfa1fe3f5
MD5 af0b9347b916fd0891ad711130470bb5
BLAKE2b-256 6ae1766f260b9b8b59fac796915bb7148f3ff8fbe1c177ed84a53fd4eba7daf2

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp310-cp310-win_amd64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 193183b08a5306365f03290c28e53146346bf857dfb605630b8602e41af4d9da
MD5 58643223e4c3a323fd5680be5ab6cb39
BLAKE2b-256 02bf31f8fb0ac3564614b61857c1cdc4180ba031c0548864f4cf97d5fcefb24c

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fe53de4e2859ea9475423eb374f59ce5eaea044e8807f7d8f81d831ab9142600
MD5 693cbcb9a2d1e6bf6bed47038b7ec43b
BLAKE2b-256 c7c66080af02ec0f014e9f049c6172c1da40ff9ad20dfe91308edd31d92d73bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lavavu-1.9.10-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for lavavu-1.9.10-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 047670cec4507fa17bf665c44ecc7fd92a3c33f4e8c6236fb3ff42c28b6c80f1
MD5 b17c75287589ad2c77d7da0ff836bbe0
BLAKE2b-256 ba32ed216134277ece7558973b9a5041e0749cc6bb952bb614739846da98a80f

See more details on using hashes here.

Provenance

The following attestation bundles were made for lavavu-1.9.10-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: wheel_deploy.yaml on lavavu/LavaVu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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