Graphviz:仅为基于记录的节点中的字段着色

iob*_*lix 12 graphviz

有没有办法只将颜色添加到基于记录的节点中的字段.如下例所示,字段struct2:f0可以单独使用不同的颜色吗?

digraph structs {
node [shape=record];
struct1 [label="<f0> left|<f1> mid\ dle|<f2> right"];
struct2 [label="<f0> one|<f1> two"];
struct3 [label="hello\nworld |{ b |{c|<here> d|e}| f}| g | h"];
struct1:f1 -> struct2:f0;
struct1:f2 -> struct3:here;
}
Run Code Online (Sandbox Code Playgroud)

谢谢

mar*_*pet 9

我不认为这是可能的.

您可以考虑使用类似HTML的标签 - 您应该可以使用基于记录的节点执行所有操作,等等.

从上面链接的文档页面:

基于记录的形状在很大程度上被取代,并且被类似HTML的标签大大推广.也就是说,shape=record可以考虑使用shape=none和类似HTML的标签,而不是使用 .

虽然HTML标签严格来说不是形状,但它们可以被视为上述记录形状的概括.特别是,如果节点已将其shape属性设置为noneplaintext,则HTML标签将是节点的形状.

  • 这种方法的缺点是这是90年代的HTML,带有字体标签和表格属性.第二个缺点是你需要使用colspan/rowspan来分配你的记录单元格.但我不认为有另一种选择:-( (2认同)

dgw*_*dgw 5

尝试这个:

  digraph G {
    "Record" [ label=<<table>
                          <tr>
                              <td>A</td>
                              <td bgcolor='#00CC11'>B</td>
                          </tr>
                       </table> 
                      >
             ];
  }
Run Code Online (Sandbox Code Playgroud)