Graphviz, изменяя размер края

Как изменить размер края в точке (graphviz)? Я хотел бы сделать некоторые края "полужирными".

81
задан Stephane Rolland 4 May 2013 в 11:39
поделиться

2 ответа

Я хотел дополнить ответ Шувалова. penwidth действительно правильная команда. Кроме того, в ответе Шувалова ширина пера равно и свойство узла и края - также правильно.

Различие, которое я хотел сделать:

  • penwidth , когда используется как свойство узла (например,, "NodeA" [penwidth = 5]) влияет на вес границы линии для этого узла

  • penwidth , когда используется в качестве грани, свойство влияет на линию вес края (значение по умолчанию - "1", при указании ширины пера = 2 край будет отображаться жирным шрифтом типа

  • , если вы хотите изменить вес линии края, вам не нужно изменять penwidth для двух узлов , соединенных этим краем (как Шувалева { {1}} ответ может предложить)

  • для ориентированного графа (ребра имеют направление) вы также можете изменить размер / вес острие стрелки и хвостик вместе с краем весом , так что все три остаются пропорциональными

  • длину ребра можно изменить , установив свойство weight , как в другом месте, значение по умолчанию - 1.0; {{1 }} увеличение этого значения увеличивает стоимость растяжения это ребро во время рендеринга (т. е. алгоритм рисования применяет более высокий штраф к решениям, в которых это ребро длиннее); обратите внимание, что край от 1 до 4 короче, чем край от 1 до 2.

Следующий код должен иллюстрировать все это. Визуализированный график показан под кодом.

digraph {
    /* declare the node & style them */
    "Node 1" [shape=diamond, penwidth=3, style=filled, fillcolor="#FCD975"];
    "Node 2" [style=filled,fillcolor="#9ACEEB" ];
    "Node 3" [shape=diamond, style=filled, fillcolor="#FCD975" ];
    "Node 4" [style=filled, fillcolor="#9ACEEB" ]

    /* declare the edges & style them */
    "Node 1" -> "Node 2" [dir=none, weight=1, penwidth=3] ;
    "Node 1" -> "Node 3" [dir=none, color="#9ACEEB"] ;
    "Node 1" -> "Node 4" [arrowsize=.5, weight=2.]
}

enter image description here

123
ответ дан 24 November 2019 в 09:38
поделиться

попробуйте это:

"NodeA" [ penwidth = 5]
"NodeB" [ penwidth = 5]
NodeA->NodeB [ penwidth = 3]
20
ответ дан 24 November 2019 в 09:38
поделиться