plotly - dcc.Graph 子图的 extendData
问题描述
我有一个带有dcc.Graph()
组件的 Dash 应用程序。该组件具有我想使用回调更新的子图。第一个子图是线图,第二个是热图。我需要更新第一个中的 y 值和第二个中的 z 值。
该图设置为:
dcc.Graph(id='spec-waterfall', responsive=True, figure={
'data': [
{
'type': 'line',
'xaxis': 'x1',
'yaxis': 'y1',
'y': spec[0],
},
{
'type': 'heatmap',
'xaxis': 'x1',
'yaxis': 'y2',
'z': spec,
}
],
'layout': {
'xaxis1': {
'anchor': 'y1',
'domain': [0.0, 1.0],
},
'yaxis1':{
'anchor': 'free',
'domain': [0.65, 1.0],
'position': 0.0,
},
'yaxis2': {
'anchor': 'x1',
'domain': [0.0, 0.55],
}
}
})
spec
二维数组在哪里。我尝试使用extendData
属性在回调中更新它,因为我不想每次都替换整个图形(必须处理大量数据 - 最好只替换数据而不是整个图形)。
@app.callback(
[Output("spec-waterfall", "extendData")],
[Input("my-interval-timer", "n_intervals")],
prevent_initial_call=True
)
def update_fig(index,spec=spec):
newLine = # build 1D array of y values for line plot
newSpec = # build 2D array of z values for heatmap
updatedData = [dict(y=[newLine], z=[newSpec]), [0,0], [len(newLine), len(newSpec)]]
return updatedData
但这与extendData
具有错误形状的论点有关。任何提示表示赞赏!
解决方案
推荐阅读
- javascript - Nativescript - 应用程序关闭时运行代码
- laravel - 如何从 laravel 中现有的 Web 中间件登录中进行 api 身份验证
- c# - app.config 中不支持关键字“数据源”
- sql-server - 如果值为 NULL,则发送其他内容
- scheme - SICP(MIT-Scheme)平方根程序
- android - Retrofit 2 - 根据响应类型解析 JSON
- android - 如何将位图图像转换为我从 android 中的画布获取的文件格式
- php - 我想知道我附近的位置在哪个主要方向上
- swift - Swift 在将图像传递给另一个 ViewController 时打开 Optional 值时意外发现 nil
- javascript - 没有td内容的html表格tbody滚动分成多行