我正在尝试保存然后检索带有图形属性的igraph图。具体来说,我有一个双端图,我将源和接收器存储为图形属性,以便我可以在恒定时间内检索它们。注意,顶点没有任何特定的顺序(例如,第一个顶点是源,最后一个是接收器)。
我搜索了文档,但我看不出任何格式都支持存储/检索图形属性。我错过了什么吗?
我的后备是使用布尔源/接收器顶点属性,但这需要更多空间并需要线性时间来检索正确的顶点。
答案 0 :(得分:1)
GraphML支持可以附加到整个图形,单个顶点或单个边缘的数字和字符串属性(实际上,它支持更复杂的但是igraph的GraphML实现仅限于数字和字符串属性) 。因此,您可以使用Graph.write_graphml()
和Graph.Read_GraphML()
。此外,您可以使用Python的pickle
模块(即使用pickle.dump()
和pickle.load()
)简单地保存igraph图,您将获得所有图形/顶点/边缘属性(甚至复杂的Python对象) ) - 唯一的问题是pickle
格式不能与Python世界之外的其他工具互操作。