You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Next-gen plotting library built using the [`pygfx`](https://github.com/pygfx/pygfx) rendering engine that can utilize [Vulkan](https://en.wikipedia.org/wiki/Vulkan), [DX12](https://en.wikipedia.org/wiki/DirectX#DirectX_12), or [Metal](https://developer.apple.com/metal/) via WGPU, so it is very fast! `fastplotlib` is an expressive plotting library that enables rapid prototyping for large scale explorative scientific visualization.
18
+
Next-gen plotting library built using the [`pygfx`](https://github.com/pygfx/pygfx) rendering engine that can utilize [Vulkan](https://en.wikipedia.org/wiki/Vulkan), [DX12](https://en.wikipedia.org/wiki/DirectX#DirectX_12), or [Metal](https://developer.apple.com/metal/) via WGPU, so it is very fast! `fastplotlib` is an expressive plotting library that enables rapid prototyping for large scale exploratory scientific visualization.
19
19
20
20
> **Note**
21
21
>
22
-
> `fastplotlib` is currently in the **late alpha stage**, but you're welcome to try it out or contribute! See our [Roadmap](https://github.com/kushalkolar/fastplotlib/issues/55). See this for a discussion on API stability: https://github.com/fastplotlib/fastplotlib/issues/121
22
+
> `fastplotlib` is currently in the **late alpha stage**, but you're welcome to use it or contribute! See our [Roadmap](https://github.com/kushalkolar/fastplotlib/issues/55). See this for a discussion on API stability: https://github.com/fastplotlib/fastplotlib/issues/121
23
23
24
24
# Supported frameworks
25
25
@@ -31,18 +31,14 @@ Next-gen plotting library built using the [`pygfx`](https://github.com/pygfx/pyg
31
31
:heavy_check_mark:`wxPython`
32
32
33
33
**Notes:**\
34
-
:heavy_check_mark: Non-blocking interactive Qt/PySide output is supported in ipython and notebooks, see http://fastplotlib.org/ver/dev/user_guide/guide.html#using-fastplotlib-in-an-interactive-shell\
34
+
:heavy_check_mark: Non-blocking interactive Qt/PySide output is supported in ipython and notebooks, see the [interactive shells section in the user guide](http://fastplotlib.org/ver/dev/user_guide/guide.html#using-fastplotlib-in-an-interactive-shell)\
35
35
:grey_exclamation: We do not officially support `jupyter notebook` through `jupyter_rfb`, this may change with notebook v7\
36
-
:grey_exclamation: We only officially support jupyterlab for use in notebook. This means we do not support vscode notebooks etc. Jupyterlab is the most reliable way to use `fastplotlib` in notebooks.\
36
+
:grey_exclamation: We only support jupyterlab for use in notebooks. This means that we do not support VSCode notebooks or any other python notebook platform. Jupyterlab is the most reliable way to use widget-based libraries in notebooks.\
37
37
:disappointed:[`jupyter_rfb`](https://github.com/vispy/jupyter_rfb) does not work in collab, see https://github.com/vispy/jupyter_rfb/pull/77
38
38
39
-
We recommend sticking to jupyter-lab for notebooks. From our experience the usage on other platforms, such as vscode
40
-
notebooks, is not optimal.
41
-
42
-
43
39
# Documentation
44
40
45
-
http://www.fastplotlib.org/
41
+
http://www.fastplotlib.org/ver/dev
46
42
47
43
Questions, issues, ideas? You are welcome to post an [issue](https://github.com/fastplotlib/fastplotlib/issues) or post on the [discussion forum](https://github.com/fastplotlib/fastplotlib/discussions)! :smiley:
48
44
@@ -60,7 +56,7 @@ pip install -U fastplotlib
60
56
# with imgui
61
57
pip install -U "fastplotlib[imgui]"
62
58
63
-
# to use in jupyterlab, no imgui
59
+
# to use in jupyterlab without imgui
64
60
pip install -U "fastplotlib[notebook]"
65
61
```
66
62
@@ -76,7 +72,7 @@ Once you have ``libjpeg-turbo``:
> `fastplotlib` and `pygfx` 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
Se[Contributing](https://github.com/fastplotlib/fastplotlib?tab=readme-ov-file#heart-contributing) for more details on development
94
+
See[Contributing](https://github.com/fastplotlib/fastplotlib?tab=readme-ov-file#heart-contributing) for more details on development
99
95
100
96
# Examples
101
97
@@ -109,40 +105,13 @@ User guide: http://fastplotlib.org/ver/dev/user_guide/guide.html
109
105
110
106
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
111
107
112
-
## Graphics drivers
113
-
114
-
You will need a relatively modern GPU, modern integrated graphics are usually fine for many use cases. Generally if your GPU is from 2017 or later it should be fine.
115
-
116
-
For more detailed information, such as use on cloud computing infrastructure, see: https://wgpu-py.readthedocs.io/en/stable/start.html#platform-requirements
117
-
118
-
Some more information on GPUs is here: http://fastplotlib.org/ver/dev/user_guide/gpu.html
119
-
120
-
### Windows:
121
-
Vulkan drivers should be installed by default on Windows 11, but you will need to install your GPU manufacturer's driver package (Nvidia or AMD). If you have an integrated GPU within your CPU, you might still need to install a driver package too, check your CPU manufacturer's info.
122
-
123
-
### Linux:
124
-
You will generally need a linux distro that is from ~2020 or newer (ex. Ubuntu 18.04 won't work), this is due to the `glibc` requirements of the `wgpu-native` binary.
108
+
## GPU drivers and requirements
125
109
126
-
Debian based distros:
110
+
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.
127
111
128
-
```bash
129
-
sudo apt install mesa-vulkan-drivers
130
-
# for better performance with the remote frame buffer install libjpeg-turbo
131
-
sudo apt install libjpeg-turbo
132
-
```
133
-
134
-
For other distros install the appropriate vulkan driver package, and optionally the corresponding `libjpeg-turbo` package for better remote-frame-buffer performance in jupyter notebooks.
135
-
136
-
#### CPU/software rendering (Lavapipe)
137
-
138
-
If you do not have a GPU you can perform limited software rendering using lavapipe. This should get you everything you need for that on Debian or Ubuntu based distros:
More detailed information on GPUs and drivers is here: http://fastplotlib.org/ver/dev/user_guide/gpu.html
143
113
144
-
### Mac OSX:
145
-
WGPU uses Metal instead of Vulkan on Mac. You will need at least Mac OSX 10.13. The OS should come with Metal pre-installed, so you should be good to go!
114
+
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
Copy file name to clipboardExpand all lines: docs/source/user_guide/gpu.rst
+31-3Lines changed: 31 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -26,11 +26,39 @@ If you aren't able to solve it please post an issue on GitHub. :)
26
26
Drivers
27
27
-------
28
28
29
-
See the README: https://github.com/fastplotlib/fastplotlib?tab=readme-ov-file#graphics-drivers
30
-
31
29
If you notice weird graphic artifacts, things not rendering, or other glitches try updating to the latest stable
32
30
drivers.
33
31
32
+
More information is also available on the WGPU docs: https://wgpu-py.readthedocs.io/en/stable/start.html#platform-requirements
33
+
34
+
Windows
35
+
^^^^^^^
36
+
37
+
Vulkan drivers should be installed by default on Windows 11, but you will need to install your GPU manufacturer's driver package (Nvidia or AMD). If you have an integrated GPU within your CPU, you might still need to install a driver package too, check your CPU manufacturer's info.
38
+
39
+
Linux
40
+
^^^^^
41
+
42
+
You will generally need a linux distro that is from ~2020 or newer (ex. Ubuntu 18.04 won't work), this is due to the `glibc` requirements of the `wgpu-native` binary.
43
+
44
+
Install the drivers directly from your GPU manufacturer's website, after that you may still need to install mesa vulkan drivers:
45
+
46
+
Debian based distros::
47
+
48
+
sudo apt install mesa-vulkan-drivers
49
+
50
+
For other distros install the corresponding vulkan driver package.
51
+
52
+
Cloud compute
53
+
~~~~~~~~~~~~~
54
+
55
+
See the WGPU docs: https://wgpu-py.readthedocs.io/en/stable/start.html#cloud-compute
56
+
57
+
Mac OSX
58
+
^^^^^^^
59
+
60
+
WGPU uses Metal instead of Vulkan on Mac. You will need at least Mac OSX 10.13. The OS should come with Metal pre-installed, so you should be good to go!
61
+
34
62
GPU Info
35
63
--------
36
64
@@ -279,7 +307,7 @@ to ``fpl.select_adapter()``::
279
307
Note that using this function reduces the portability of your code, because
280
308
it's highly specific for your current machine/environment.
281
309
282
-
The order of the adapters returned by ``wgpu.gpu.enumerate_adapters()`` is
310
+
The order of the adapters returned by ``fpl.enumerate_adapters()`` is
283
311
such that Vulkan adapters go first, then Metal, then D3D12, then OpenGL.
284
312
Within each category, the order as provided by the particular backend is
285
313
maintained. Note that the same device may be present via multiple backends
0 commit comments