Рисование графика с некоторыми свойствами, отображаемыми с помощью Boost Graph Library

каждый. Я использую библиотеку Boost Graph, но мне это довольно сложно. Недавно я попытался нарисовать следующий график (я использовал файл .dot для отображения, потому что у меня недостаточно репутации, чтобы прикрепить изображение, извините за причиненные неудобства)

enter code here
graph{
    0[label = "Prof Nachiket", color = blue];
    1[label = "Nick", color = red];
    2[label = "Lam", color = green];
    0 -- 1[label = "Supervisor"];
    0 -- 1[label = "Supervisor"];
    1 -- 2[label = "Co-worker" ];

}

А затем превратить его в картинку с помощью Graphviz. Однако я понятия не имел, как добавить такую ​​​​информацию, как метка, цвет, в края графика. Другими словами, я мало или совсем не представляю, как нарисовать приведенный выше график с помощью библиотеки Boost Graph. Может ли кто-нибудь помочь мне? Большое спасибо

С уважением

Ник Нг


person nicknguyen128    schedule 23.07.2013    source источник
comment
возможный дубликат Как распечатать график увеличения в graphviz с одним из отображаемых свойств?   -  person ravenspoint    schedule 23.07.2013


Ответы (1)


НОВЫЙ ОТВЕТ

Это дубляж, см.

СТАРЫЙ ОТВЕТ:

В Интернете есть много ресурсов, в которых указано, как рисовать расширенные графики с помощью Graphviz. Вот некоторые из них, которые я нашел полезными в прошлом:

  • www.graphviz.org/pdf/dotguide.pdf‎
  • www.graphviz.org/content/attrs
  • www.graphviz.org/content/output-formats
  • www.graphviz.org/doc/info/shapes.html
  • http://graphviz-dev.appspot.com/

Последняя ссылка представляет собой онлайн-рендеринг, очень полезный, если на вашем компьютере нет графического интерфейса. Для вашего конкретного вопроса вот простой пример с использованием цветных краев и меток:

Точка:

graph{
    0 [label = "Prof Nachiket", color=blue shape=ellipse ];
    1 [label = "Nick", color = red shape=Mdiamond];
    2 [label = "Lam", color = green shape=diamond];
    0 -- 1[label = "Supervisor" color=pink];
    1 -- 2[label = "Co-worker" color=red penwidth=2];
}

Изображение:

Изображение, сгенерированное из приведенного выше точечного кода

person Rasmus    schedule 23.07.2013
comment
Спасибо за ответ. Но, похоже, вы неправильно поняли мой вопрос. Сначала мне нужно создать все о моем графике с помощью библиотеки Boost Graph, затем он будет преобразован в мой прикрепленный выше код. - person nicknguyen128; 23.07.2013
comment
Я вижу, извините за это! Я опубликую новый ответ в ближайшее время. - person Rasmus; 23.07.2013
comment
Ваш вопрос уже задавался много раз. Я связался со связанным/похожим вопросом, и на основе этой информации вы сможете решить свою проблему. - person Rasmus; 23.07.2013