def info_list(graph):
"""Returns useful information about the graph as a list of tuples
:param pybel.BELGraph graph: A BEL graph
:rtype: list
"""
number_nodes = graph.number_of_nodes()
result = [
('Nodes', number_nodes),
('Edges', graph.number_of_edges()),
('Citations', count_unique_citations(graph)),
('Authors', count_unique_authors(graph)),
('Network density', nx.density(graph)),
('Components', nx.number_weakly_connected_components(graph)),
]
try:
result.append(('Average degree', sum(graph.in_degree().values()) / float(number_nodes)))
except ZeroDivisionError:
log.info('Graph has no nodes')
if graph.warnings:
result.append(('Compilation warnings', len(graph.warnings)))
return result
评论列表
文章目录