A Bokeh on screen gesture/mouse drag based joystick widget for use in a dashboard with controls
Project description
Bokeh Joystick Widget
This is a custom widget for the Python Bokeh library that allows you to control a joystick via mouse drags or touch gestures.
The widget has x and y properties that are updated as the joystick is moved. The x and y properties are in the range -100 to 100.
The widget is derived from https://github.com/bobboteck/JoyStick/.
Setup
Install with pip:
pip install bokeh-joystick-widget
Or poetry:
poetry add bokeh-joystick-widget
Usage
In your bokeh app, you can use the joystick widget like this:
from bokeh_joystick_widget import JoystickWidget
:
# some plot
:
joystick = JoystickWidget()
joystick.on_change("position", lambda attr, old, new: print(f'x: {new["x"]}, y: {new["y"]}'))
:
:
show(column(joystick, plot))
Examples
There are 3 examples:
- examples/static_joystick_example.py - show a column with a plot and the joystick, then exit.
- examples/console_joystick_example.py - show a plot and the joystick in a bokeh server app. Callbacks from the front end drive console logs of the joystick position.
- examples/bigger_joystick.py - Scale the size of the rendered joystick.
Screenshots
Output data:
Roadmap
- Get the example JS demo widget/bokeh model to work - whatever that widget is. - done
- Figure out how to get values back to the python end with it. - done
- Figure out how to swap their control for the joystick (however hacky) - done
- Note - this is a TS file from the original, adapted here. The DOM element change is important.
- Figure out how to make that tidier. - done
- Figure out how to publish to PyPi (alpha) and test in a pip installed test. - done
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
Built Distribution
File details
Details for the file bokeh_joystick_widget-0.3.3.tar.gz
.
File metadata
- Download URL: bokeh_joystick_widget-0.3.3.tar.gz
- Upload date:
- Size: 8.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.9.18 Darwin/21.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ca710c56c54440c2271ea519fa60b939d78c40f38a9b2f82baaec5884d5b94c |
|
MD5 | 6b480adc01feae60533e940c8e0f8c75 |
|
BLAKE2b-256 | 7e699cd52182997a17e8e7fd3dcd7514e8bed7e7e9821e614303194889f0ff04 |
File details
Details for the file bokeh_joystick_widget-0.3.3-py3-none-any.whl
.
File metadata
- Download URL: bokeh_joystick_widget-0.3.3-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.9.18 Darwin/21.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6857b969e2b57afda1b7e243061f8944278414ce85f787167f6ee9eb7976e7a5 |
|
MD5 | b098238e56705c9e062dd2ddddf38248 |
|
BLAKE2b-256 | b39b60cd745ae8829f40c10e0dcdacc380f3d4d0700cf6fc8d557a3714c21601 |