Giriş
Aşağıda Graphviz ile ilgili aldığım notlar var.
Aşağıda Graphviz ile ilgili aldığım notlar var.
Node Tanımlamak
Önce düğümler tanımlanır. Düğümlere
color= ile renk verilir.
shape=circle,oval, point gibi şekiller verilebilir.
label= ile isim verilir.
Örnek
Şöyle yaparız.
Şöyle yaparız.
2. Bağlantıları Tanımlamak
color= ile renk verilir.
shape=circle,oval, point gibi şekiller verilebilir.
label= ile isim verilir.
Örnek
Şöyle yaparız.
digraph G {
A [color=gray];
B [color=red];
C [color=green];
D [color=green];
A->B ;
A->C ;
C->D ;
}
ÖrnekŞöyle yaparız.
digraph
{
node [color=Limegreen,fontcolor=Limegreen,shape=oval]//Renk,font,şekil ver
ilocus [label="iLocus"] //Düğüme isim ver
...
}
Aynı özelliklere sahip düğümler node [...] ile başlayan satırdan sonra tanımlanır. Tekrar node [..] ile başlarsak bir özelliği değiştiririz.digraph
{
node [color=Limegreen,fontcolor=Limegreen,shape=oval]
ilocus [label="iLocus"]
...
node [color=Blue,fontcolor=Blue,shape=diamond]
containgene [label="Contains gene(s)?"]
...
}
Örnek
Node'lara circle, doublecircle,point gibi şekiller verilebilir. Şöyle yaparız.
Node'lara circle, doublecircle,point gibi şekiller verilebilir. Şöyle yaparız.
digraph G {
office1 [label="Building office1", shape=circle];
office2 [label="Building office2", shape=circle];
warehouse1 [label="Building warehouse1", shape=circle];
contract1 [label="Contract contract1", shape=diamond];
contract2 [label="Contract contract2", shape=diamond];
office1->office2 ;
warehouse1->contract1 ;
contract2->contract1 ;
}
Örnek
Node'lara etiket verilebilir. Şöyle yaparız.
Node'lara etiket verilebilir. Şöyle yaparız.
digraph finite_state_machine {
pad=0.2;
{
rank=same;
node [shape = point, style = invis]; q_0;
node [shape = doublecircle, style = solid]; q_5;
node [shape = circle];
q_1 [ label = <<i>q<sub>1</sub></i>> ];
q_2 [ label = <<i>q<sub>2</sub></i>> ];
q_3 [ label = <<i>q<sub>3</sub></i>> ];
q_4 [ label = <<i>q<sub>4</sub></i>> ];
q_5 [ label = <<i>q<sub>5</sub></i>> ];
q_0 -> q_1;
q_1 -> q_2 [ label = "." ];
q_1 -> q_2 [ label = <ε>, constraint=false ];
q_2 -> q_1 [ label = <ε>, constraint=false ];
q_2 -> q_3 [ label = <<i>a</i>> ];
q_3 -> q_4 [ label = <<i>^a</i>> ];
q_3 -> q_4 [ label = <ε>, constraint=false ];
q_4 -> q_3 [ label = <ε>, constraint=false ];
q_4 -> q_5 [ label = <<i>b</i>> ];
}
}
Düğümler bittikten sonra bağlantılar tanımlanır. Sadece basit bir çizgi istiyosak şöyle yaparız.
ilocus -> containgene
Eğer düğümden iki çizgi çıkıyorsa sağdaki (east) ve soldaki (west) çizgileri şöyle tanımlarız.containgene:e -> geneflank [xlabel="No"]
containgene:w -> gilocus [xlabel="Yes"]
Çıktı olarak şuna benzer bir şey alırız. ------ Multiple genes? -----
| |
| N Y |
| |
v V
siLocus ciLocus
spline
Çizgilerin görünüşünü kontrol eder. Yuvarlak hatlı çizgiler yerine düz çizgiler istiyorsak şöyle yaparız.
Şöyle yaparız.
digraph
{
splines=line
...
}
3. SubgraphŞöyle yaparız.
digraph G
{
graph [compound = true];
splines = false;
node [style = bold, shape = record, fontcolor = magenta];
subgraph cluster0
{
style = bold; label = “Mac”;
edge [style = invisible, arrowhead = none];
“Finder” -> “Terminal” -> “Safari”;
}
subgraph cluster1
{
style = bold; label = “Windows”;
node_1 [label = “<f0> Start|<f1> Command Prompt”];
}
subgraph cluster2
{
style = bold; label = “Linux”;
node_1 [label = “<f0> Start|<f1> Konsole”];
}
}
Hiç yorum yok:
Yorum Gönder