2013-07-20 10 views
10

私は以下のドットサンプルを持っています。私は各レコード(テーブル名)の最初のセクションに異なる背景と前景色を与えたいと思います。私はレコードのためにこれを行う方法の例を見つけることができません。基本的には、SQLクエリスキーマダイアグラムのテーブル名を際立たせます。誰も助けることができますか?Graphviz dot:マルチレコード形状の1つのレコードの色を変更する方法

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-record-based-node) – 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

関連する問題