2012-01-25 13 views
9

Kayıt tabanlı bir düğümde yalnızca bir alana renk eklemenin bir yolu var mı? Aşağıdaki örnekte olduğu gibi, struct2: f0 alanı sadece farklı renkte olabilir mi?Graphviz: Yalnızca Kayıt Tabanlı Düğümdeki bir alan

digraph structs { 
node [shape=record]; 
struct1 [label="<f0> left|<f1> mid\ dle|<f2> right"]; 
struct2 [label="<f0> one|<f1> two"]; 
struct3 [label="hello\nworld |{ b |{c|<here> d|e}| f}| g | h"]; 
struct1:f1 -> struct2:f0; 
struct1:f2 -> struct3:here; 
} 

Thx

cevap

9

bu mümkün olduğunu düşünmüyorum.

HTML-like labels kullanmayı düşünebilirsiniz; kayıt tabanlı düğümler ve daha fazlası ile yapabileceğiniz her şeyi yapabilmeniz gerekir. Yukarıda bağlantılı dokümantasyon sayfasından

: rekor tabanlı şekil büyük ölçüde yitiren ve büyük ölçüde HTML benzeri etiketlerle genelleştirilmiş etti

. Yani, shape=record kullanmak yerine, shape=none ve HTML benzeri etiketi kullanmayı düşünebilirsiniz.

ve

HTML etiketleri, açık konuşmak gerekirse olmamakla birlikte, bir şekil, bunlar yukarıda açıklanan kayıt şekilleri genelleme olarak görülebilir olabilir. özellikle, bir düğüm şekil özniteliğini none veya plaintext olarak ayarladıysa, HTML etiketi düğümün şekli olacaktır.

+2

Bu yaklaşımın dezavantajı yazı etiketleri ile bu 90's dönemi HTML olmasıdır ve masa bağlıyor. İkinci bir dezavantajı, kayıt hücrelerinizi dağıtmak için colspan/rowspan ile uğraşmanız gerektiğidir. Ama bence bir alternatif var :-( –

+1

Evet, 90'lı dönem HTML'si ve diz çöküşümüzün tepkisi onu hor görmektir.Ama farklı bir amaç için ... Bu amaçla, modern Graphviz. – SSteve

4

bu deneyin:

digraph G { 
    "Record" [ label=<<table> 
          <tr> 
           <td>A</td> 
           <td bgcolor='#00CC11'>B</td> 
          </tr> 
         </table> 
         > 
      ]; 
    } 
İlgili konular