2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу 1, 2, 3  След.
 
 Выбор ПО для работы с графами
Сообщение14.02.2006, 12:09 


11/01/06
10
Помогите с выбором программного продукта для работы с графами. От продукта требуется следующее:
1. Загрузка таблицы смежностей из файла
2. Работа с большими графами (кол-во вершин порядка 10^6)
3. Визуализация графа. Желательно увеличение изображения и просмотр его по частям.
4. Поиск вершин по номеру (идентификатору)

Операции вроде поиска кратчайших путей и т.п. не интересуют, главное отображение и работа с ним.

Может кто нибудь сталкивался с подобными задачами.

 Профиль  
                  
 
 Re: Помогите с выбором ПО
Сообщение22.02.2006, 13:46 


22/02/06
9
Москва
Могу порекомендовать:
1. ILog - С++ и JAVA
2. GoView - .NET и JAVA
3. Lassalle AddFlow - .NET

Упорядочены по стоимости.
Сам юзал все, причем при разработке коммерческих продуктов. Но визуализировать столь большие графы, ИМХО, бессмысленно.

Очень рекомендую GoView.

Alex_500 писал(а):
Помогите с выбором программного продукта для работы с графами. От продукта требуется следующее:
1. Загрузка таблицы смежностей из файла

Это почти точно придется писать самому.

Alex_500 писал(а):
2. Работа с большими графами (кол-во вершин порядка 10^6)

Не понятно что требуется: если визуализация (как это следует из сообщения), то см. ниже.

Alex_500 писал(а):
3. Визуализация графа. Желательно увеличение изображения и просмотр его по частям.

Так и визуализировать, наверное нужно по частям?

 Профиль  
                  
 
 
Сообщение23.02.2006, 12:57 
Модератор
Аватара пользователя


11/01/06
5710
Из коммерческих еще есть LEDA.
А из бесплатных Boost Graph Library.

Для визуализации можно использовать Graphviz.

 Профиль  
                  
 
 
Сообщение27.02.2006, 11:50 


11/01/06
10
Я использовал Graphviz.
Пакет хороший, но он просто выдает конечную картинку в граф. файл и все.
Хотелось бы, чтобы он эту картинку формировал на экран и можно было бы что нибудь с ней делать (перетаскивать части с места на место, удалять части и т.д.)

 Профиль  
                  
 
 Программа для построения графа
Сообщение14.01.2008, 21:44 


14/01/08
9
Луганск
Уважаемые, как вы думаете, понадобиться ли кому-то такая программа. Вообще я занимаюсь программирование, доделываю программу, которая визуально строит графы. Программа позволяет сгенерировать из графического представления: матрицу инциденции, смежности., список дуг и списки смежности(в HTML, Excel), к тому же можно вводить их текстового редактора (1){12,11,......};(){}.....; (это списки смежности) и строиться нужный граф. Как вы думаете нужна кому-то такая программа???

 Профиль  
                  
 
 
Сообщение14.01.2008, 21:52 
Заслуженный участник
Аватара пользователя


01/03/06
13626
Москва
fics писал(а):
Как вы думаете нужна кому-то такая программа???
Как минимум, она пригодится бездельникам, которые любят, чтобы кто-нибудь решил за них задачки по курсу теории графов. :D

 Профиль  
                  
 
 
Сообщение14.01.2008, 21:58 


14/01/08
9
Луганск
Нет, ну это понятно, а так чтобы действительно в какой то сфере, может кто вкурсе?

 Профиль  
                  
 
 
Сообщение14.01.2008, 21:59 
Заслуженный участник


28/10/05
1368
А для какого числа вершин она годится?

То есть можно ввести файлик с данными (не вручную!?), а получить рисунок в формате ps, например?

 Профиль  
                  
 
 
Сообщение14.01.2008, 22:04 


14/01/08
9
Луганск
Пока тестировал на 500 вершин, вроде не подтормажует, а граф у меня пока не ор, А сохранить можно в любом формате только рисунок большой получится(всю рабочую область загнав в BitMap), Это дипломка моя :). Из txt можно, а можно граф сохранить как файл приложения(ну это как Ворда свои файлы, у графопостроителя свои:)

 Профиль  
                  
 
 
Сообщение14.01.2008, 22:08 
Заслуженный участник


28/10/05
1368
Я так представляю, что граф можно по-разному изобразить: и на плоскости, и в пространстве. У Вас как? Что лежит в основе графа (по какой схеме вы располагаете вершины)?

 Профиль  
                  
 
 
Сообщение14.01.2008, 22:15 


14/01/08
9
Луганск
Есть плоскость, размежею мышкой на нее вершины(можно удалить, перетащить), затем соеденяю вершины ребрами, пока как я говорил граф неорентирован, потому что тяжело рисовать стрелку(просто линию намного проще) от вершины к вершине(перемещая вершину стрелки(ребра) должны перерисовываться).
А собственно какая разница 2d или 3d, или вопрос в красоте?

 Профиль  
                  
 
 
Сообщение14.01.2008, 22:24 
Заслуженный участник


28/10/05
1368
fics писал(а):
Есть плоскость, размежею мышкой на нее вершины(можно удалить, перетащить), затем соеденяю вершины ребрами, пока как я говорил граф неорентирован, потому что тяжело рисовать стрелку(просто линию намного проще) от вершины к вершине(перемещая вершину стрелки(ребра) должны перерисовываться).
А собственно какая разница 2d или 3d, или вопрос в красоте?


2D или 3D интересно потому, что в принципе может задавать граф (модель чего).

Не совсем поняла про мышку :), если вы говорите, что суть задавая какую-нибудь adjacency matrix, получаем готовую картинку.

Вершины же вы не хаотически на плоскость наносите? Есть какая-нибудь регулярная решетка для этого?

 Профиль  
                  
 
 
Сообщение14.01.2008, 22:37 
Заслуженный участник
Аватара пользователя


01/03/06
13626
Москва
fics писал(а):
А собственно какая разница 2d или 3d, или вопрос в красоте?
Мне всегда казалось, что не любой граф можно корректно изобразить в плоскости (без пересечения его рёбер).

 Профиль  
                  
 
 
Сообщение14.01.2008, 22:39 


14/01/08
9
Луганск
Цитирую вас: (модель чего).

Вот вот я за это и спрашиваю, 3D может сделаю попозже, когда будет больше практики в программировании. А пока могу сделать так: есть граф на плоскости,
можно его конструировать мышкой, можно так же вводить из текстового файла, но лушче пользоваться "своим файлом"(там сохраняться координаты его вершин),ведь смотрите когда мы задали граф таким способом:(1){2,3};(2){1,3} тогда вершины на плоскоти получат случайные координаты, но можно делать так [x,y](1){2,3}; [x,y](2){1,3}, но помоему это неудобно. Ведь как я уже писал, есть четыре основный представления графа в памяти ПК и можно реилизовывать на этих данных, какие то алгоритмы(к примеру обход в ширину и тд), Имеет ли это какой то практический смысл?

 Профиль  
                  
 
 
Сообщение14.01.2008, 22:40 
Заслуженный участник


28/10/05
1368
Brukvalub писал(а):
Мне всегда казалось, что не любой граф можно корректно изобразить в плоскости (без пересечения его рёбер).


Дорогой Brukvalub, вам ли не знать, что есть такой раздел planar graphs :D.

Мне кажется, что в программе должны быть не только такие графы.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу 1, 2, 3  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group