2013-07-20 39 views
10

我有以下點的示例。我想給每個記錄(表名)的第一部分提供不同的背景和前景色。我找不到如何做這個記錄的例子。基本上我希望sql查詢模式圖中的表名突出。誰能幫忙?Graphviz點:如何更改多記錄形狀中的一個記錄的顏色

digraph G { 
    rankdir=LR; 
    node [shape=record]; 
    corpus_language [label="corpus_language|<id> id\len\l|<name> name\lEnglist\l|<sentence_count> sentence_count\l1027686\l"]; 
    corpus_sentence [label="corpus_sentence|<id> id\l1241798\l|<text> text\lBaseball is a sport\l|<creator_id> creator_id\l10859\l|<created_on> created_on\l2006-11-14 17:58:09.303128\l|<language_id> language_id\len\l|<activity_id> activity_id\l11\l|<score> score\l124\l"]; 
    corpus_language:id -> corpus_sentence:language_id [arrowhead=normal label=language_id]; 
} 
+0

的可能重複的[Graphviz的:顏色僅在基於記錄的節點的字段(http://stackoverflow.com/questions/9009683/graphviz-color-only-a-field -in-A-基於記錄節點) – Izzy

回答

15

我敢肯定,這是不可能的。相反,您應該使用HTML風格的標籤,這是一種更加發展的記錄節點形式。您可以使用<table>標籤定義節點,並使用bgcolor="your_color"設置顏色。可用顏色的列表,請訪問:http://www.graphviz.org/doc/info/colors.html(你也有這樣做的RGBA方式,如下所述:http://www.graphviz.org/doc/info/attrs.html#k:color

隨着HTML標籤,你的榜樣變爲如下:

digraph G 
{ 
    rankdir = LR; 
    node1 
    [ 
     shape = none 
     label = <<table border="0" cellspacing="0"> 
        <tr><td port="port1" border="1" bgcolor="red">corpus_language</td></tr> 
        <tr><td port="port2" border="1">id: en</td></tr> 
        <tr><td port="port3" border="1">name: Englist</td></tr> 
        <tr><td port="port4" border="1">sentence_count: 1027686</td></tr> 
       </table>> 
    ] 
    node2 
    [ 
     shape = none 
     label = <<table border="0" cellspacing="0"> 
        <tr><td port="port1" border="1" bgcolor="blue">corpus_sentence</td></tr> 
        <tr><td port="port2" border="1">id: 1241798</td></tr> 
        <tr><td port="port3" border="1">text: Baseball is a sport</td></tr> 
        <tr><td port="port4" border="1">creator_id: 10859</td></tr> 
        <tr><td port="port5" border="1">created_on: 2006-11-14 17:58:09.303128</td></tr> 
        <tr><td port="port6" border="1">language_id: en</td></tr> 
        <tr><td port="port7" border="1">activity_id: 11</td></tr> 
        <tr><td port="port8" border="1">score: 124</td></tr> 
       </table>> 
    ] 
    node1:port2 -> node2:port6 [label="language_id"] 
} 

這裏結果:

enter image description here

相關問題