hits_numpy(G, normalized=True)
hits_numpy is deprecated and will be removed in networkx 3.0.
The HITS algorithm computes two numbers for a node. Authorities estimates the node value based on the incoming links. Hubs estimates the node value based on outgoing links.
The eigenvector calculation uses NumPy's interface to LAPACK.
The HITS algorithm was designed for directed graphs but this algorithm does not check if the input graph is directed and will execute on undirected graphs.
A NetworkX graph
Normalize results by the sum of all of the values.
Two dictionaries keyed by node containing the hub and authority values.
Returns HITS hubs and authorities values for nodes.
>>> G = nx.path_graph(4)
The :None:None:`hubs`
and :None:None:`authorities`
are given by the eigenvectors corresponding to the maximum eigenvalues of the hubs_matrix and the authority_matrix, respectively.
The hubs
and authority
matrices are computed from the adjancency matrix:
>>> adj_ary = nx.to_numpy_array(G)
... hubs_matrix = adj_ary @ adj_ary.T
... authority_matrix = adj_ary.T @ adj_ary
hits_numpy
maps the eigenvector corresponding to the maximum eigenvalue of the respective matrices to the nodes in G
:
>>> hubs, authority = nx.hits_numpy(G)See :
The following pages refer to to this document either explicitly or contain code examples using this.
networkx.algorithms.link_analysis.hits_alg.hits_numpy
Hover to see nodes names; edges to Self not shown, Caped at 50 nodes.
Using a canvas is more power efficient and can get hundred of nodes ; but does not allow hyperlinks; , arrows or text (beyond on hover)
SVG is more flexible but power hungry; and does not scale well to 50 + nodes.
All aboves nodes referred to, (or are referred from) current nodes; Edges from Self to other have been omitted (or all nodes would be connected to the central node "self" which is not useful). Nodes are colored by the library they belong to, and scaled with the number of references pointing them