В этом примере диаграммы я хотел бы, чтобы два узла (A и B в источнике) начинались в одной и той же позиции y. В частности, я хотел бы, чтобы синий заголовок и красный заголовок были в одном ранге или в позиции y --- идеально как можно ближе к верхней части кадра изображения, а не поведению, которое оно в настоящее время вызывает.graphviz html узлы таблицы, центрированные вместо одного ранга
Другими словами, я хочу красный заголовок, чтобы быть именно там, где синий заголовок, с точки зрения его у позиции, но, как он стоит в настоящее время, похоже, все новые узлы, используя появляются HTML метки с центром по наибольшему узлу html-метки.
Вот еще одна картинка, чтобы проиллюстрировать, что я имею в виду:
В идеале, чем больше узлов добавляются с аналогичной структурой HTML этикетки, они движутся слева направо, и начать в то же у позиции как и все остальные узлы/заголовки.
К сожалению, я пробовал много вариантов rank
, но я не могу это сделать, используя ранг (или что-то еще).
Записи не являются приемлемым решением; число строк чрезвычайно велико в графиках, которые я генерирую, и записи с строками> 400, похоже, не сгенерируют для меня с ошибкой синтаксического анализа.
Просьба предоставить решение, которое генерирует что-то очень похожее на хороший график, например, изображение (второе изображение), с точки зрения что-то вроде следующего Graphviz источника (используется для генерации плохое изображение с dot -O -Tpng <filename.gv>
):
digraph example {
node [shape=plaintext]
rankdir=TB
A [label=<
<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0">
<TR>
<TD BGCOLOR="lightblue">HEADER</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
<TR>
<TD ALIGN="LEFT">TEST</TD>
</TR>
</TABLE>
>];
B [
label=<
<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0">
<TR PORT="header">
<TD BGCOLOR="#d23939" COLSPAN="2">HEADER</TD>
</TR>
<TR>
<TD BGCOLOR="#ff6363">ONE</TD><TD BGCOLOR="#ff6363">TWO</TD>
</TR>
<TR>
<TD PORT="1">1</TD><TD>2</TD>
</TR>
<TR>
<TD PORT="3">3</TD><TD>4</TD>
</TR>
</TABLE>
>];
}