使用 `networkx` 导出到 `graphml` 时可以将哪些数据类型导出为属性?
What data types can be exported as attributes when exporting to `graphml` with `networkx`?
我有一个 networkx
图表,其中包含一些 list
和 dict
属性,函数 nx.write_graphml
不接受这些属性作为导出的有效类型。我找不到可以自动忽略这些属性的函数,所以我决定自己创建一个。
我知道int
、float
和string
被接受了,但我不知道是否还有其他人,如果有,是哪些。
graphml
格式遵循 XML
结构,根据 docs,接受以下数据类型:
Each attribute title is defined in a key element with an identifier, a name, a title, edge or node, and the type of data. The supported data types:
- boolean
- int
- long
- float
- double
- string
如果列表不是太长,那么一个建议是创建编号的属性(例如 colour_1
、colour_2
)。同样,对于字典。这不方便,但这些是 graphml
约束。
此外,如果您不打算在 Gephi 中使用 list
或 dict
,但想保留它们以备后用,那么一种选择是将它们转换为字符串表示形式,使用像 json.dumps
.
更新:写入数据时,networkx
会尝试将数据类型转换为允许的表示形式。例如,可以在 here.
中找到特定于 numpy
的转化列表
我有一个 networkx
图表,其中包含一些 list
和 dict
属性,函数 nx.write_graphml
不接受这些属性作为导出的有效类型。我找不到可以自动忽略这些属性的函数,所以我决定自己创建一个。
我知道int
、float
和string
被接受了,但我不知道是否还有其他人,如果有,是哪些。
graphml
格式遵循 XML
结构,根据 docs,接受以下数据类型:
Each attribute title is defined in a key element with an identifier, a name, a title, edge or node, and the type of data. The supported data types:
- boolean
- int
- long
- float
- double
- string
如果列表不是太长,那么一个建议是创建编号的属性(例如 colour_1
、colour_2
)。同样,对于字典。这不方便,但这些是 graphml
约束。
此外,如果您不打算在 Gephi 中使用 list
或 dict
,但想保留它们以备后用,那么一种选择是将它们转换为字符串表示形式,使用像 json.dumps
.
更新:写入数据时,networkx
会尝试将数据类型转换为允许的表示形式。例如,可以在 here.
numpy
的转化列表