Installation | GPU Drivers | Documentation | Examples | Contributing
Next-gen plotting library built using the pygfx
rendering engine that utilizes Vulkan, DX12, or Metal via WGPU, so it is very fast! fastplotlib
is an expressive plotting library that enables rapid prototyping for large scale exploratory scientific visualization.
What are some things I can do withNote:
fastplotlib
is currently in the late alpha stage, but you're welcome to use it or contribute! See our Roadmap. Also, see this for a discussion on API stability: #121
fastplotlib
?
GPU-accelerated visualization
interactive visualization via an intuitive and expressive API
rapid prototyping and algorithm design
easy exploration and fast rendering of large-scale data
design, develop, evaluate, and ship machine learning models
create visualizations for real-time acquisition systems for scientific instruments (cameras, etc.)
fastplotlib
can run on anything that pygfx
can also run, this includes:
✔️ Jupyter lab
, using jupyter_rfb
✔️ PyQt
and PySide
✔️ glfw
✔️ wxPython
Write your code once and run it anywhere. Whether you are using Qt
, glfw
, jupyter lab
, or doing offscreen rendering, fastplotlib
works across all major platforms (Linux, Windows, Mac OS X) 😄 See the FAQ for more details on where and how you can use fastplotlib
.
http://www.fastplotlib.org/ver/dev
Questions, issues, ideas? You are welcome to post an issue or post on the discussion forum! 😃
To install use pip:
# with imgui and jupyterlab pip install -U "fastplotlib[notebook,imgui]" # minimal install, install glfw, pyqt6 or pyside6 separately pip install -U fastplotlib # with imgui pip install -U "fastplotlib[imgui]" # to use in jupyterlab without imgui pip install -U "fastplotlib[notebook]"
We strongly recommend installing simplejpeg
for use in notebooks, you must first install libjpeg-turbo
conda
, you can get libjpeg-turbo
through conda.Once you have libjpeg-turbo
:
Note:
fastplotlib
andpygfx
are fast evolving projects, the version available through pip might be outdated, you will need to follow the "For developers" instructions below if you want the latest features. You can find the release history here: https://github.com/fastplotlib/fastplotlib/releases
Make sure you have git-lfs installed.
git clone https://github.com/fastplotlib/fastplotlib.git cd fastplotlib # install all extras in place pip install -e ".[notebook,docs,tests,imgui]" # install latest pygfx pip install git+https://github.com/pygfx/pygfx.git@main
See Contributing for more details on development
Examples gallery: http://fastplotlib.org/ver/dev/_gallery/index.html
User guide: http://fastplotlib.org/ver/dev/user_guide/guide.html
fastplotlib
code is identical across notebook (jupyterlab
), and desktop use with Qt
/PySide
or glfw
.
Notebooks
The quickstart.ipynb
tutorial notebook is a great way to get familiar with the API: https://github.com/fastplotlib/fastplotlib/tree/main/examples/notebooks/quickstart.ipynb
Generally if your GPU is from 2017 or later it should be fine. Modern integrated graphics are usually fine for many use cases. The exact requirements will depend on how complex your visualization is and how many objects you need to render.
More detailed information on GPUs and drivers is here: http://fastplotlib.org/ver/dev/user_guide/gpu.html
For more detailed information, such as use on cloud computing infrastructure, see the WGPU docs: https://wgpu-py.readthedocs.io/en/stable/start.html#cloud-compute
We welcome contributions! See the contributing guide: https://github.com/fastplotlib/fastplotlib/blob/main/CONTRIBUTING.md
You can also take a look at our Roadmap for 2025 and Issues for ideas on how to contribute!
A special thanks to all of the pygfx
developers and the amazing work they have done.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4