Qt-based implementation of VisOpt Slider widget
Project description
VisOpt Slider
Qt-based implementation of VisOpt Slider widget [UIST 2014]
If your applications are based on Qt (PySide2), it is quite easy to integrate a VisOpt Slider widget into your applications.
Features
VisOpt Slider is a GUI widget consisting of multiple sliders. It is specifically designed for interactive exploration of a high-dimensional scalar-valued function. It has the following special features.
- Visualization: VisOpt Slider visualizes the values of the target function along with the sliders in the interface using a colormap.
- Optimization: Not available yet. Please refer to the original paper (Koyama et al. 2014) and its extended version (Koyama et al. 2016).
Install
This package can be install via pip
:
pip install visoptslider
By this, the dependencies (matplotlib
, numpy
, PySide2
, and their dependencies) will be automatically installed together.
Example
from PySide2.QtWidgets import QApplication
import numpy as np
import visoptslider
if __name__ == "__main__":
app = QApplication()
# Define a target function
num_dimensions = 3
def target_function(x):
return 1.0 - np.linalg.norm(x)
# Define a target bound
upper_bound = np.array([+1.0, +1.0, +1.0])
lower_bound = np.array([-1.0, -1.0, -1.0])
maximum_value = 1.0
minimum_value = 0.0
# Instantiate and initialize VisOpt Slider
sliders_widget = visoptslider.SlidersWidget()
sliders_widget.initialize(num_dimensions=num_dimensions,
target_function=target_function,
upper_bound=upper_bound,
lower_bound=lower_bound,
maximum_value=maximum_value,
minimum_value=minimum_value)
# Show VisOpt Sliders
sliders_widget.show()
app.exec_()
See https://github.com/yuki-koyama/visoptslider/tree/master/python_tests for more detailed examples.
References
- Yuki Koyama, Daisuke Sakamoto, and Takeo Igarashi. 2014. Crowd-Powered Parameter Analysis for Visual Design Exploration. In Proceedings of the 27th annual ACM symposium on User interface software and technology (UIST '14), pp.65-74. DOI: https://doi.org/10.1145/2642918.2647386
- Project page: https://koyama.xyz/project/CrowdPoweredAnalysis/
- Yuki Koyama, Daisuke Sakamoto, and Takeo Igarashi. 2016. SelPh: Progressive Learning and Support of Manual Photo Color Enhancement. In Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems (CHI '16), pp.2520--2532. DOI: https://doi.org/10.1145/2858036.2858111
- Project page: https://koyama.xyz/project/SelPh/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.