我定义了元素,比如level指的是我想要那个节点的圆层
elements = [{'data': {'id': 'a', 'label': 'a', 'level': 1},
{'data': {'id': 'b', 'label': 'b', 'level': 1},
{'data': {'id': 'c', 'label': 'c', 'level': 2},
.......]
我尝试了以下不起作用的方法(加载布局时出错)
app.layout = html.Div([
cyto.Cytoscape(
id='cytoscape',
elements= elements,
layout={'name': 'concentric', 'concentric': lambda x: x['data']['level']}
)
])
javascript文档在这里https://js.cytoscape.org/#layouts并指定
let options = {
name: 'concentric',
concentric: function( node ){ // returns numeric value for each node, placing higher nodes in levels towards the centre
return node.degree();
}
如何设置此同心参数
干杯
不幸的是,无法将python函数传递给
cyto.Cytoscape
组件中的layout
参数。这是因为函数不会被传输到JS函数,这是concentric
键在options
内工作所需的替代办法是:
cyto.Cytoscape
的源代码,并硬编码要用于同心布局的JSfunction
。您需要按照说明构建和创建自定义安装李>相关问题 更多 >
编程相关推荐