generate_gml#

generate_gml(G, stringizer=None)[源代码]#

生成图表的单个条目 G 采用GML格式。

参数
G网络X图表

要转换为GML的图形。

stringizer可调用,可选

A stringizer 它将非整型/非浮点型/非Dict值转换为字符串。如果它无法将值转换为字符串,则应引发 ValueError 以表明这一点。默认值:无。

返回
行:字符串的生成器

GML数据行。不追加换行符。

加薪
NetworkXError

如果 stringizer 无法将值转换为字符串,或者要转换的值不是字符串 stringizer 是没有的。

笔记

名为“directed”、“multigraph”、“node”或“edge”的图形属性,名为“id”或“label”的节点属性,名为“source”或“target”(或“key”的边缘属性,如果 G 是多图表)被忽略,因为这些属性名用于对图表结构进行编码。

GML文件使用7位ASCII编码存储,任何扩展ASCII字符(is8859-1)都显示为HTML字符实体。而不指定 stringizer /反串行器,代码可以写 int /浮动/str/独占/列表`GML规范要求的数据。用于写入其他数据类型,以及用于读取 `str 您需要显式提供一个 stringizer /反串行器

有关GML文件格式的其他文档,请参阅 GML url

参见模块docstring networkx.readwrite.gml 了解更多详细信息。

实例

>>> G = nx.Graph()
>>> G.add_node("1")
>>> print("\n".join(nx.generate_gml(G)))
graph [
  node [
    id 0
    label "1"
  ]
]
>>> G = nx.OrderedMultiGraph([("a", "b"), ("a", "b")])
>>> print("\n".join(nx.generate_gml(G)))
graph [
  multigraph 1
  node [
    id 0
    label "a"
  ]
  node [
    id 1
    label "b"
  ]
  edge [
    source 0
    target 1
    key 0
  ]
  edge [
    source 0
    target 1
    key 1
  ]
]