"Красивая" визуализация графа.

From
Roman Dawydkin (2:5022/5.77)
To
Nickita A Startcev
Date
2002-07-18T09:40:46Z
Area
RU.ALGORITHMS
[Mon 15/Jul/2002 01:05] Nickita A Startcev ==> All

 NS> Какие есть идеи по красивой визуализации графа?
 NS> Для  каждой пары вершин известно "псевдорасстояние" между ними,
 NS> хочется чтоб "близкие" вершины отображались рядом, а далекие - далеко.

    В поставке Java SDK от Sun есть demo-апплет GraphLayout, там именно это и происходит. Задаются вершины и желаемые расстояния между ними. Всё это довольно красиво ездит по экрану, пытаясь в течении времени самоупорядочиться.
    Только возможна какая закавыка -- не каждую такую систему можно однозначно развернуть на двумерную плоскость (а некоторые системы, вероятно, и на трёхмерное простанство однозначно не развернуть), иногда возникают "перехлёсты" между рёбрами, которые самостоятельно развернуться никак не могут -- так схема на экране и лежит перепутнанная, сколько не жди. Поэтому в том апплете есть возможности: вручную перетащить любую вершину, включить "тепловое движение", когда вершины случайно дёргаются на небольшое расстояние, и, наконец, перемешать их снова.
    IMHO очень поучительная программка. Её ещё можно модернизировать.
    Смотри http://java.sun.com/j2se/1.4/docs/relnotes/demos.html (ищи GraphLayout). Чтобы с этим разобраться, надо будет выкачать виртуальную машину.

... <airbell@chat.ru>
--- GoldED+/W32
 * Origin: OJSC Efremov Synthetic Rubber Enterprise (2:5022/5.77)