Python 3.x 使用按钮在Plotly/Python中隐藏注释
所以我用Plotly构建了一个网络图。输出良好。现在我想为网络的每个节点添加标签。为此,我使用了Plotly注释。pos将网络中每个节点的位置保持为{node_id:x,y};G是我的networkx图Python 3.x 使用按钮在Plotly/Python中隐藏注释,python-3.x,button,label,plotly,networkx,Python 3.x,Button,Label,Plotly,Networkx,所以我用Plotly构建了一个网络图。输出良好。现在我想为网络的每个节点添加标签。为此,我使用了Plotly注释。pos将网络中每个节点的位置保持为{node_id:x,y};G是我的networkx图 layoutAnnotationList = [] for k,p in pos.items(): x = p[0] y = p[1] try: text = G.node[k]['hostname'] except: text
layoutAnnotationList = []
for k,p in pos.items():
x = p[0]
y = p[1]
try:
text = G.node[k]['hostname']
except:
text = k
layoutAnnotationList.append( { 'x':x, 'y':y, 'text':text } )
在此之后,我将list LayoutNotationList添加到布局本身
layout = { 'annotations': layoutAnnotationList }
现在,我已经阅读了如何使用Relayat方法将按钮添加到布局中,但我真的不明白如何使这些按钮显示或隐藏注释
我创建了一个布局按钮列表,我要在网页上显示它们,但我对它们的功能一无所知
layout = { 'annotations': layoutAnnotationList, 'updatemenus':layoutButtons }
有关于如何使用这些的提示吗
谢谢 因此,仔细阅读之后,解决方案是在创建按钮时使用更新方法
layoutButtons = list([
dict(type="buttons",
active=-1,
buttons=list([
dict(label = 'Label:On',
method = 'update',
args = [{'visible': [True, True, True, True]},{'annotations':layoutAnnotationList}]
),
dict(label = 'Label:Off',
method = 'update',
args = [{'visible':[True, True, False, False]},{'annotations':[]}]
),
]
)
)
]
)
我是从你那里得到这个主意的。仍然不知道如何解释参数中的{'visible':[True,True,False,False]}字典,但它正在工作。滑块控件的plotly文档表明{'visible':[True,False…]}字典映射到数据列表,如果为True,则显示我的数据列表的此索引,如果为False,则隐藏我的数据列表的此索引。换句话说,每个数据项应该有一个True/False
在代码示例中,它们最初将数据中每个项目的visible设置为False
数据=[dict
可见=假,
线条=dictcolor='00CED1',宽度=6,
name='由于链接页面上的代码可能会随着时间的推移而更改或删除,因此您应该在此处添加要点并保留引用。否则,您的答案可能在将来无效。