首页 > 解决方案 > Plotly - 如何在悬停时突出显示节点的路径?

问题描述

我有一个看起来像这样的图表:

在此处输入图像描述

生成图表的代码段如下所示:

import sys
import os

import numpy
import itertools
from lxml import etree 
import lxml.html

import re

import networkx as nx
import matplotlib.pyplot as plt

import pygraphviz

from networkx.drawing.nx_agraph import graphviz_layout

import plotly.graph_objects as go

G = nx.DiGraph()

#nodes and edges added around here

pos=graphviz_layout(G, prog='dot')

edge_trace = go.Scatter(
    x=edge_x, y=edge_y,
    line=dict(width=0.5, color='#888'),
    hoverinfo='none',
    mode='lines')

node_trace = go.Scatter(
    x=node_x, y=node_y,
    mode='markers',
    hoverinfo='text',
    marker=dict(size=10,line_width=2)
    )
            
node_trace.marker.color = color_list
node_trace.text = node_text

config = dict({'scrollZoom': True})

fig = go.Figure(data=[edge_trace, node_trace],
             layout=go.Layout(
                title='Comparison Results: ',
                titlefont_size=16,
                showlegend=False,
                hovermode='closest',
                margin=dict(b=80,l=10,r=10,t=40),
                annotations=[ dict(
                    text="",
                    showarrow=False,
                    xref="paper", yref="paper",
                    x=0.005, y=-0.002 ) ],
                xaxis=dict(showgrid=False, zeroline=False, showticklabels=False),
                yaxis=dict(showgrid=False, zeroline=False, showticklabels=False))
                )

fig.update_layout(dragmode='pan')

fig.show(config=config)

我如何做到这一点,以便当我将鼠标悬停在一个节点上时,一直突出显示到根节点的路径?

任何帮助深表感谢。提前致谢!

标签: pythonplotly

解决方案


推荐阅读