Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在plotly中向带有子图块的图形添加滑块_Python_Plotly_Data Visualization - Fatal编程技术网

Python 在plotly中向带有子图块的图形添加滑块

Python 在plotly中向带有子图块的图形添加滑块,python,plotly,data-visualization,Python,Plotly,Data Visualization,我试图用plotly来展示4个不同的函数如何随着它们的一个公共参数的变化而变化。我想要4个堆叠的子图(每个函数一个),下面有一个滑动条,用于改变参数。本质上,我希望它看起来像子图,上面有共享X轴示例,除了下面显示的滑块。看起来很像我需要的,只是我不想要一个范围滑块。这不是我正在使用的实际代码,但为了方便起见,我将在结构中发布一些类似于我的代码: def f(rho): dom = np.linspace(0, 1, 50) f1 = (dom - rho) ** 2 f2

我试图用plotly来展示4个不同的函数如何随着它们的一个公共参数的变化而变化。我想要4个堆叠的子图(每个函数一个),下面有一个滑动条,用于改变参数。本质上,我希望它看起来像子图,上面有共享X轴示例,除了下面显示的滑块。看起来很像我需要的,只是我不想要一个范围滑块。这不是我正在使用的实际代码,但为了方便起见,我将在结构中发布一些类似于我的代码:

def f(rho):
    dom = np.linspace(0, 1, 50)
    f1 = (dom - rho) ** 2
    f2 = np.sin(dom * rho)
    f3 = np.abs(dom - rho)
    f4 = dom ** rho
    return f1, f2, f3, f4
我想看看这4个函数在
np.linspace(0.5,2101)
中如何随rho变化,因此rho是由滑块控制的变量。我喜欢plotly是因为我想做一些自定义,并且能够滚动图形查看函数值。

我最终在plotly社区论坛上找到了它,它用以下代码示例回答了这个问题:

import plotly.graph_objs as go
from plotly.tools import make_subplots

fig = make_subplots(1, 2)

fig.add_scatter(y=[1, 3, 2], row=1, col=1, visible=True)
fig.add_scatter(y=[3, 1, 1.5], row=1, col=1, visible='legendonly')
fig.add_scatter(y=[2, 2, 1], row=1, col=1, visible='legendonly')
fig.add_scatter(y=[1, 3, 2], row=1, col=2, visible=True)
fig.add_scatter(y=[1.5, 2, 2.5], row=1, col=2, visible='legendonly')
fig.add_scatter(y=[2.5, 1.2, 2.9], row=1, col=2, visible='legendonly')

steps = []
for i in range(3):
    step = dict(
        method = 'restyle',  
        args = ['visible', ['legendonly'] * len(fig.data)],
    )
    step['args'][1][i] = True
    step['args'][1][i+3] = True
    steps.append(step)

sliders = [dict(
    steps = steps,
)]

fig.layout.sliders = sliders

go.FigureWidget(fig)
这是一个很好的例子。您能否编辑您的答案,以包含您认为有用的相关部分?这样,如果链接消失,您的答案对其他人仍然有用。