Візуалізація дуже великих графіків посилань


25

Я шукаю інструмент для візуалізації дуже великих графіків спрямованих посилань. На даний момент у мене є ~ 2 млн. Вузлів з ~ 10 млн. Країв. Я спробував декілька різних речей, але більшості потрібні години, щоб зробити навіть графіки на 100k вузлів

Що я спробував:
я провів день з gephi, але 80K вузлів потрібно близько години, і додаток стає в основному марним.

Будь-які пропозиції?

Інтерактивна візуалізація була б плюсом.


Це допоможе, якби ви заявили, що ви вже намагалися. Ви давали Графвізу?
Вольфганг Бангерт

1
Графівіз - це те, що я спробував би спочатку. Не маю уявлення, чи буде це працювати з чимось таким розміром. Очевидно, вам знадобиться щось, що використовує розрізне представлення для матриці суміжності, але, здається, неможливо, що програмний пакет не буде.
Девід Кетчесон

Я зараз даю Graphviz знімок, це виглядає дещо перспективніше, але я не думаю, що це дозволяє взаємодія
madmaze

2
Ви намагалися інтерпретувати графік як розріджену матрицю та візуалізувати її за допомогою функції шпигуна MATLAB або Octave? 10 мільйонів ненульових записів знаходяться в межах досяжності помірно потужних настільних ПК. Це також створить вам спектральну бісекцію (знаходження розділів вашого графіка може полегшити вам візуалізацію).
Джек Поульсон

1
Ви заглянули в гості?
pyCthon

Відповіді:


13

Графівіз повинен працювати. Я вважаю, що зображення, пов’язані з матрицями в урізноманітненій колекції матриць Університету Флориди, були візуалізовані за допомогою sfdp, алгоритму візуалізації графіків, спрямованого на силу, розробленого Іфаном Ху. Більшість матриць колекції мають обчислювальний час, пов'язаний з генеруванням відповідної візуалізації, тому ви, можливо, зможете шукати матриці, графіки яких мають характеристики, подібні до тих, які ви хочете візуалізувати. Наприклад, графік з ~ 2,1 млн. Вузлів і ~ 3 млн. Ребер знадобився Hu ~ 36000s, або 10 годин. Хоча незрозуміло, яке обладнання було використано для генерування графіка, напевно, обґрунтовано здогадується, що використовувався робочий стіл або ноутбук, а часи принаймні дадуть вам приблизне уявлення про те, скільки часу може зайняти візуалізація графіка. Алгоритм Ху є одним із найсучасніших алгоритмів візуалізації (він опублікував його у 2005 році), але, не будучи експертом у цій галузі, я не можу говорити про те, існують чи ні кращі алгоритми. Цей алгоритм включений у програму Graphviz як опція і призначений для використання на великих графіках, таких як описаний вами.


Дуже акуратно. Схоже, Барнс-Хат використовується для імітації сил між вузлами графіка, тому я припускаю, що паралельна реалізація FMM може призвести до значного прискорення. З іншого боку, метод Ху, схоже, має багаторівневу структуру, схожу на MeTiS, яка, як правило, важко паралелізувати.
Джек Поульсон

Так, коли я подивився на статтю, я також подумав, що паралельна реалізація FMM може бути цікавою, але я не був впевнений, наскільки це буде практичним, оскільки я не маю великого досвіду роботи з паралельними алгоритмами.
Джефф Оксберрі

3
@JackPoulson - кашель
Aron Ahmadia

@GeoffOxberry - див. Посилання вище
Арон Ахмадія

1
@JackPoulson - Ви побачите, що алгоритми компонування, спрямовані на силу, досить чутливі до початкового висіву, іншим групам була приємна робота над переформулюванням проблеми для більш естетичного планування.
Арон Ахмадія

7

Інструментарій JavaScript InfoVis має акуратний інтерактивний інтерфейс для анотованих локальних зображень графіків. Ці демонстраційні демонстрації можуть стосуватися вас:


5

Дивіться Graphinsight 1.2, може легко працювати з мільйонами вузлів, це інтерактивне та тривимірне зображення.

Ви також можете компонувати графіки з мільйонами вузлів і ребер за допомогою високоефективних алгебраїчних методів або методів, спрямованих на силу. Він доступний в пробній версії для оцінки ( Відмова: Я один з авторів програми ).

www.graphinsight.com


1
@linelio - Дякуємо за вашу відповідь і ласкаво просимо до scicomp! Будь ласка, ознайомтеся з правилами просування та будьте впевнені, що ви чітко розкриваєте будь-які особисті зв’язки під час надання рекомендацій.
Арон Ахмадія

5

Ось декілька рекомендацій та посилань, зібраних із часом:

  • Для 2M-вузлів важко порекомендувати що-небудь, не знаючи вашого обладнання, і можливо, деяке зменшення даних в порядку, але, беручи інформацію, яка є у вільному доступі, zGrViewer може відповідати вашим потребам візуалізації (потрібен GraphViz).
  • Слідуючи ідеї @pyCthon, запропонуйте вам також подивитися на VisIt для деякої інтерактивності в побудові графіків.
  • Я повторно відвідую igraphпакет для статистичної мови R , який включає чіткі алгоритми компонування ( Fruchterman-Reingold та Kamada-Kawai ), серед інших.
  • Бібліотека макетів великих графіків тепер розміщена на SourceForge.

0

Ми створили http://www.github.com/graphistry/pygraphistry для того, щоб зробити це можливим у більшості браузерів та ноутбуків. Ідея полягає у використанні WebGL для візуалізації великих графіків (панорамування / збільшення / тощо) та вивантаження більшості обчислень у реальному часі (макет, фільтр тощо) до хмари GPU. Це схоже на Gephi чи Cytoscape, але з більшою увагою на великих графіках та аналізі даних та інтеграції в Інтернет та ноутбуки.


0

Ви можете спробувати "Тюльпан" [1], я думаю, він може обробляти досить великі графіки (принаймні, я спробував це з 10K до 100K вузлів, і він добре працював).

[1] http://tulip.labri.fr/TulipDrupal/

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.