【问题标题】:draw only edges with labels pair仅绘制带有标签对的边
【发布时间】:2013-01-24 23:01:33
【问题描述】:

我想绘制图形(梯形轨迹表示)如下: 即没有节点形状和两个边缘标签:在边缘的头部和尾部。 我应该怎么做才能实现这一目标? (14, 15 — 各有两条边的节点)

【问题讨论】:

  • 用 Graphviz 可能是不可能的,但在(例如)SVG 中很容易。为什么需要 DOT?
  • 我希望能够直接从C++ 代码下绘制图形(通过boost::graph 库)。
  • AFAIK boost::graph 绘制任何东西。它将渲染委托给 Graphviz,如果您定义了适当的导入/导出绑定。要使用 C++ 绘图,请查看(例如)CImg

标签: graphviz dot


【解决方案1】:

几乎丑陋的解决方案(如果可以提高正确性,请进行编辑):

graph G {
    rankdir = LR;
    node [shape = point];
    edge [minlen = 2, fontsize = 8]
    a -- b [taillabel = "1", headlabel = "2"];
    b -- c [taillabel = "4", headlabel = "15"];
    b -- e [taillabel = "3", headlabel = "5"];
    e -- d [taillabel = "6", headlabel = "8"];
    e -- f [taillabel = "7", headlabel = "14"];
    c -- d [taillabel = "15", headlabel = "9"];
    f -- g [taillabel = "14", headlabel = "13"];
    d -- g [taillabel = "10", headlabel = "11"];
    g -- h [taillabel = "12", headlabel = "16"];
} 

导致

【讨论】:

    猜你喜欢
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 2013-10-14
    • 1970-01-01
    • 2011-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多