Дополнительный урок 1: надписи на рёбрах
Надписи на рёбрах
создаются (по аналогии
с надписями на узлах)
с помощью атрибута
«label»:
edge: { source: "A"
target: "B"
label: "пример"
} |
|
 |
Хозяйке на заметку
Поддержка
кириллицы (UTF-8) —
начиная
с версии aiSee 3.
aiSee 2.x
поддерживает
только
латиницу (ISO 8859-1).
По умолчанию,
aiSee 3 использует векторный шрифт,
в котором нет букв кириллицы.
Как выбрать другой шрифт,
будет рассказано
в
отдельном уроке.
Во всех примерах здесь
и впоследствии
использован шрифт
Гельветика кеглем в 14 пикселей.
|
|
С целью ускорить
визуализацию больших графов,
aiSee по умолчанию не отображает
надписи на рёбрах,
даже если таковые указаны.
Включить их (и снова выключить)
можно
в меню «Layout»,
но можно и
заставить
aiSee сразу же
отображать
надписи на рёбрах
с помощью атрибута графа
«display_edge_labels»:
Этот атрибут,
как и прочие
атрибуты графа,
можно указывать
в любом месте графа,
но рекомендуется
указывать
в самом его начале.
Пример:
graph: {
node.fontname: "helvR14"
display_edge_labels: yes
node: { title: "М" label: "Маша" }
node: { title: "1" label: "клубнику" }
node: { title: "2" label: "дыню" }
node: { title: "3" label: "спаржу" }
node: { title: "4" label: "кольраби" }
edge: { source: "М" target: "1" label: "любит" }
edge: { source: "М" target: "2" label: "не любит" }
edge: { source: "М" target: "3" label: "ненавидит" }
edge: { source: "М" target: "4" label: "терпеть не может" }
} |
 |
|
Как и надписи на узлах,
надписи на рёбрах
могут состоять из
нескольких строк.
Допускаются знаки
перевода строки и
табуляции («\n» и «\t»).
Двойные кавычки
(знак дюйма) могут
указываться
при помощи «\"».
edge: { source: "М" target: "4"
label: "терпеть\nне\"могёт\"" }
|
|
 |
Цвет надписи можно изменить
с помощью атрибута «textcolor»:
edge: { source: "М" target: "1"
label: "любит"
textcolor: red
} |
|
 |
Поддерживаемые
цвета
подробно описаны
в уроке 4.
По умолчанию
надпись имеет
тот же цвет,
что и само ребро.
Изменить цвет
надписей
сразу на нескольких/всех
рёбрах можно с помощью
глобальных атрибутов.

По умолчанию,
с целью оставить
достаточно места
между надписями
на рёбрах и узлами,
aiSee может преломлять
рёбра, менять
узлы местами
и вообще полностью
изменять всю
раскладку графа.
В результате,
при включении/выключении
надписей на рёбрах
внешний вид раскладки
может существенно изменяться.
Предотвратить это вы можете
с помощью атрибута графа
«dirty_edge_labels»:
Рассмотрим
разницу
на примере двух графов:
| Надписи выключены |
Надписи включены |
Надписи включены,
dirty_edge_labels: yes |
 |
 |
 |
 |
 |
 |
|
Граф визуализируется, как если бы надписи на рёбрах были самостоятельными узлами.
Достоинства:
- Надписи на рёбрах не наезжают друг на друга, на соседние рёбра и на узлы графа.
Недостатки:
- Рёбра могут преломляться на надписях.
- При выключении/включении надписей на рёбрах раскладка графа может полностью изменяться.
- На визуализацию требуется больше времени.
|
Граф визуализируется, как если бы на рёбрах не было надписей, а затем уже надписи накладываются на середину рёбер.
Достоинства:
- Ускоренная визуализация графа.
- Рёбра не преломляются на надписях.
- При выключении/включении надписей раскладка графа не меняется. Надписи просто ложатся поверх рёбер.
Недостатки:
- Надписи на рёбрах могут наезжать друг на друга и на другие рёбра.
Длинные надписи могут не помещаться на ребре, если они рисуются вдоль него.
|
|