【问题标题】:How to get the node name with Graphviz and libcgraph?如何使用 Graphviz 和 libcgraph 获取节点名称?
【发布时间】:2018-07-04 22:22:16
【问题描述】:

我正在尝试更新一些旧代码,这些旧代码曾经与 Graphviz 2.26 一起使用,并迭代了图形的所有节点,并用它们的名字做了一些事情:

for (Agnode_t *n = agfstnode(graph); n; n = agnxtnode(graph, n)) {
    ... use n->name ...
}

然而,在最近(2.30+?)版本的 Graphviz 中,cgraph 库用于节点表示,它的 Agnode_t 结构中没有 name 字段。

我知道agnode() 函数允许按名称查找节点,但似乎没有任何函数可以朝另一个方向发展。我是否遗漏了什么,或者真的没有办法使用 cgraph 访问现有节点的名称?

【问题讨论】:

  • 这正是我想要的,谢谢!即使在盯着手册页这么久之后,我还是以某种方式设法错过了它……您能否将其作为答案,以便我接受它?

标签: c graphviz


【解决方案1】:

您可以使用函数agnameof,它列在cgraph 手册页的“通用对象”部分:

char      *agnameof(void*);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-21
    相关资源
    最近更新 更多