小编Rob*_*rto的帖子

使用 Graphviz dot 处理后如何获得节点的排名?

我使用 dot 来渲染图表,效果很好。

现在我需要以某种方式获得点分配给每个节点的排名,有办法做到吗?

例如来自这个 .dot 文件:

digraph D {
    Ivan -> Herbert [label="15,16"];
    Ivan -> Diego [label="23", color="slategray"];
    Roberto -> Herbert [label="17,18"];
    Roberto -> Ivan [label="19,20"];
    Diego -> Roberto [label="21", color="slategray", style=dashed, color=red, constraint=false]
    {rank=max;}
}
Run Code Online (Sandbox Code Playgroud)

点渲染结果

我想获得以下信息:

rank of "Roberto" is 1
rank of "Ivan" is 2
rank of "Diego" is 3
rank of "Herbert" is 3
Run Code Online (Sandbox Code Playgroud)

其中节点的等级是其在图形渲染中的深度,即顶部节点的等级为1,其子节点的等级为2,依此类推。

请注意,我的图表通常比较复杂,并且总是包含循环,并且向用户显示视觉布局,因此“自己动手”方法不适用,因为每个节点的排名需要与点渲染相同。

我目前正在使用 python,但我可以使用任何其他工具来实现此目的。

dot graphviz

5
推荐指数
1
解决办法
1569
查看次数

在C++中使用std :: istringsteam将字符串转换为float

我一直在尝试将一个简单的字符串转换为浮点数,但我没有运气.这就是我现在所拥有的:

int main()
{
    float value;
    std::string stringNum = "0.5";
    std::istringstream(stringNum) >> value;

    return 0
}
Run Code Online (Sandbox Code Playgroud)

但我收到这个错误:

Error   2   error C2440: '<function-style-cast>' : cannot convert from 'std::string' to 'std::istringstream'    c:\users\administrator\desktop\Test\main.cpp    12
Run Code Online (Sandbox Code Playgroud)

谁能给我一些关于如何简单地将字符串转换为浮点数的指导?

谢谢

c++ string floating-point

2
推荐指数
1
解决办法
376
查看次数

标签 统计

c++ ×1

dot ×1

floating-point ×1

graphviz ×1

string ×1