0

按照 ipycitoscape 的说明,我无法使用 ipycitoscape 绘制图形。

根据:https ://github.com/QuantStack/ipycytoscape/blob/master/examples/Test%20NetworkX%20methods.ipynb

这应该工作:

import networkx as nx
import ipycytoscape

G2 = nx.Graph()
G2.add_nodes_from([*'ABCDEF'])
G2.add_edges_from([('A','B'),('B','C'),('C','D'),('E','F')])

print(G2.nodes)
print(G2.edges)
cytoscapeobj = ipycytoscape.CytoscapeWidget()
cytoscapeobj.graph.add_graph_from_networkx(nx_graph)

G2 是一个 networkx 图示例,它看起来不错,因为 print(G2) 将 networkx 对象返回,并且可以打印 G2.nodes 和 G2.edges。

错误:

ValueError: invalid literal for int() with base 10: 'A'

为什么节点应该是整数?更一般的情况是,如果具有一百万行的 pandas 数据帧边缘是 ProcessA-ProcessB、processC-processD 等字符串的起始数据点,该怎么办

还看一下示例,要注意节点列表由每个节点的字典数据组成。该数据包括每个节点的“id”以及“属性”。令人惊讶的是,networkx Graph 应该具有所有这些属性。

谢谢

4

2 回答 2

3

此问题已修复。详见附件。在此处输入图像描述

请让我知道它是否仍在发生。随意打开一个问题:https ://github.com/QuantStack/ipycytoscape/

于 2020-08-25T09:49:01.640 回答
0

我自己只是在玩 ipycytoscape,所以我可能会偏离基础,但是,这条线不应该是:

cytoscapeobj.graph.add_graph_from_networkx(G2) # 你的图名放在这里

尝试生成构建在不存在的图上的 cytoscape 对象可能会触发 ValueError,因为它找不到任何节点。

于 2020-07-15T20:20:25.413 回答