Bagaimana cara menambahkan label tepi di Graphviz?

169

Saya mencoba menggambar grafik menggunakan Graphviz, tetapi saya perlu menambahkan label di bagian tepinya. Sepertinya tidak ada cara untuk itu di Graphviz. Apakah ada jalan keluar?

pengguna855
sumber

Jawaban:

234

Anda menggunakan properti label yang terpasang di tepi.

digraph G {
 a -> b [ label="a to b" ];
 b -> c [ label="another label"];
}

Di atas menghasilkan grafik yang terlihat seperti ini.

teks alternatif

Andrew Walker
sumber
32
Mengapa label menyentuh ujungnya? Bukankah seharusnya ada celah?
AndreKR
11
@AndreKR Perbaikan cepat adalah dengan menempatkan spasi di awal label: a -> b [label = "a to b"];
chembrad
6
Perbaikan lain adalah menggunakan rankdir="LR";, yang menghasilkan grafik horizontal dengan label ditempatkan di atas tepi tanpa menyentuh.
Dave Jarvis
6
apakah ada cara agar label diputar secara vertikal agar tidak tergantung pada garis?
Justin L.
5
Untuk referensi di masa mendatang, dokumentasi bahasa DOT ada di sini dan dokumentasi atribut ada di sini .
Jens
23

@Andrew Walker telah memberikan jawaban yang bagus!

Perlu juga diperhatikan labeltooltip atributnya . Ini memungkinkan string tambahan untuk dilampirkan pada label tepi. Ini lebih mudah bagi pengguna daripada tooltipatribut, karena dapat dengan mudah diarahkan langsung ke tepi. Sintaksnya adalah sebagai berikut:

digraph G {
 a -> b [label="  a to b" labeltooltip="this is a tooltip"];
 b -> c [label="  another label" ];
}

Yang memberikan hasil sebagai berikut: contoh label dengan tooltip

Allan Bowe
sumber
8

Anda dapat menggunakannya label="\E"Akan menghasilkan bye label default.

Sebagai contoh:

digraph G {
 a -> b [ label="\E" ];
 b -> c [ label="\E"];
}
Nirav Patel
sumber