95 votes

Graphviz, la modification de la taille de bord

Comment modifier la taille de la bordure en point (graphviz)? Je voudrais faire quelques bords "gras".

141voto

doug Points 29567

Je voulais compléter chouvalov de réponse. penwidth est en effet le bon de commande. En outre, dans chouvalov, la réponse de penwidth est à la fois un nœud et d'un bord de la propriété, c'est aussi correct.

La distinction que je voulais faire:

  • penwidth, lorsqu'il est utilisé comme un nœud propriété (par exemple, "Noeuda" [penwidth = 5]) sur la ligne de frontière de poids pour le nœud

  • penwidth, lorsqu'il est utilisé comme un bord propriété affecte la ligne de poids de le bord (la valeur par défaut est "1", la spécification de penwidth=2 fera l' bord apparaissent en gras type

  • si vous souhaitez modifier l'épaisseur de ligne d'un côté, vous n'avez pas besoin de changer penwidth pour les deux nœuds connecté en edge (comme shuvalev de l' réponse pourrait suggérer)

  • pour un graphe orienté (les bords ont une direction de), vous pourriez aussi envisager de changer la taille/poids de la flècheet arrowtail, avec le bord de poids, de sorte que tous trois restent proportionnelle

  • la longueur d'une arête peut être changé en définissant le poids de la propriété, comme d'ailleurs, la valeur par défaut est 1,0; l'augmentation de cette valeur augmente l' coût de l'étirement de ce bord au cours de le rendu (c'est à dire, le dessin l'algorithme s'applique une pénalité plus élevée à des solutions dans lesquelles cette arête est plus); notez que le bord de 1 de 4 est plus court que le bord de 1 2.

Le code suivant illustre tout cela. Le rendu graphique est illustré ci-dessous le code.

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.]
}

alt text

22voto

shuvalov Points 1609

essayez ceci:

"NodeA" [ penwidth = 5]
"NodeB" [ penwidth = 5]
NodeA->NodeB [ penwidth = 3]

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X