基于qt的visopt滑块控件的实现
visoptslider的Python项目详细描述
VisOpt滑块
基于qt的visopt滑块小部件的实现[uist 2014]
如果您的应用程序基于qt(pyside2),那么将visopt滑块小部件集成到您的应用程序中是非常容易的。
功能
visopt slider是一个由多个滑块组成的gui小部件。它是专门为高维标量值函数的交互式探索而设计的它有以下特点
- Visualization:VisOpt Slider使用colormap可视化目标函数的值以及界面中的滑块
- 优化:尚不可用。请参阅原始纸张(Koyama et al. 2014)及其扩展版本(Koyama et al. 2016)。
安装
此软件包可以通过pip
:
pip install visoptslider
这样,依赖项(matplotlib
、numpy
、PySide2
及其依赖项)将自动安装在一起
示例
fromPySide2.QtWidgetsimportQApplicationimportnumpyasnpimportvisoptsliderif__name__=="__main__":app=QApplication()# Define a target functionnum_dimensions=3deftarget_function(x):return1.0-np.linalg.norm(x)# Define a target boundupper_bound=np.array([+1.0,+1.0,+1.0])lower_bound=np.array([-1.0,-1.0,-1.0])maximum_value=1.0minimum_value=0.0# Instantiate and initialize VisOpt Slidersliders_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 Sliderssliders_widget.show()app.exec_()
有关更详细的示例,请参见https://github.com/yuki-koyama/visoptslider/tree/master/python_tests
参考文献
- 小山由纪子、坂本大辅和井田武夫2014年crowd-powered参数分析,用于可视化设计探索。在第27届ACM用户界面软件与技术年度研讨会论文集(uist'14),第65-74页。数字对象标识:https://doi.org/10.1145/2642918.2647386
- 小山由纪子、坂本大辅和井田武夫。2016年。selph:逐步学习和支持手动照片颜色增强。在2016中国计算机学会计算系统中人的因素会议记录(CHI'16),第2520-2532页DOI:https://doi.org/10.1145/2858036.2858111