Контроль размера
Как вы правильно предположили, это можно сделать, изменив size
.
Вот несколько примеров:
digraph {1->2;}
Размеры изображения: 83 * 155px . Это размер графика с настройками по умолчанию.
digraph {size=1; 1->2;}
Размеры изображения: 51 * 96px . Изображение было уменьшено до 1 дюйма (96 dpi). Это ожидаемое поведение, потому что документация гласит:
Если определено и чертеж больше
чем заданный размер, рисунок
равномерно уменьшен, чтобы он соответствовал
в пределах заданного размера.
digraph {size=2; 1->2;}
Размеры изображения: 83 * 155px . Опять же, ожидаемое поведение, график уже меньше 2 дюймов и его не нужно уменьшать.
digraph {size="2!"; 1->2;}
Размеры изображения: 103 * 192px . График масштабировался до тех пор, пока одно из измерений не равнялось 2 дюймам. Ожидаемое поведение, поскольку в документации указано:
Если размер оканчивается восклицательным знаком
(!), то считается
желаемый размер. В этом случае, если оба
Размеры чертежа меньше
чем размер, рисунок масштабируется
равномерно, по крайней мере, до одного измерения
равняется его размеру в размере.
Интерпретация pos-атрибутов узлов и ребер
Полагаю, вы имеете в виду pos
значения формата xdot.
xdot графика
digraph {1->2;}
является следующим
digraph {
node [label="\N"];
graph [bb="0,0,54,108",
_draw_="c 9 -#ffffffff C 9 -#ffffffff P 4 0 -1 0 108 55 108 55 -1 ",
xdotversion="1.2"];
1 [pos="27,90", width="0.75", height="0.5", _draw_="c 9 -#000000ff e 27 90 27 18 ", _ldraw_="F 14.000000 11 -Times-Roman c 9 -#000000ff T 27 84 0 7 1 -1 "];
2 [pos="27,18", width="0.75", height="0.5", _draw_="c 9 -#000000ff e 27 18 27 18 ", _ldraw_="F 14.000000 11 -Times-Roman c 9 -#000000ff T 27 12 0 7 1 -2 "];
1 -> 2 [pos="e,27,36.413 27,71.831 27,64.131 27,54.974 27,46.417", _draw_="c 9 -#000000ff B 4 27 72 27 64 27 55 27 46 ", _hdraw_="S 5 -solid c 9 -#000000ff C 9 -#000000ff P 3 31 46 27 36 24 46 "];
}
Положительные значения узлов обозначают центр положения узла. Поскольку ограничивающим прямоугольником графика является «0,0,54,108», позиции узлов «27,18» и «27,90» идеально отцентрированы по горизонтали.
Для ребер, я думаю, pos
содержит точки сегментов ребер, тогда как _draw_
содержит контрольные точки B-Spline (но я не совсем уверен в этом).