Wizualizacja wykresu z milionem wierzchołków


17

Jakiego narzędzia najlepiej użyć do wizualizacji (narysowania wierzchołków i krawędzi) wykresu zawierającego 1000000 wierzchołków? Na wykresie jest około 50000 krawędzi. Potrafię obliczyć położenie poszczególnych wierzchołków i krawędzi.

Zastanawiam się nad napisaniem programu do generowania pliku svg. Jakieś inne sugestie?


możesz wypróbować Graphviz ... nie jestem pewien, czy skaluje się do milionów wierzchołków ....
— Debasis

Mam nadzieję, że odpowiedź na to pytanie może
— wpłynąć

Witaj @Cici, zwykle odradzamy pytania na temat zalecanych narzędzi na tej i innych stronach SE, ponieważ zapraszają tylko wiele opinii.
— Sean Owen,

Odpowiedzi:


19

Sugeruję również Gephioprogramowanie ( https://gephi.github.io ), które wydaje się być dość potężne. Niektóre dodatkowe informacje na temat korzystania Gephiz dużych sieci można znaleźć tutaj i, bardziej ogólnie, tutaj . Cytoscape( http://www.cytoscape.org ) jest alternatywą dla Gephi, będąc kolejną popularną platformą do kompleksowej analizy i wizualizacji sieci.

Jeśli chcesz programowo pracować z sieciami (w tym wizualizacją) w R, Python lub C / C ++, możesz sprawdzić igraphkolekcję bibliotek. Mówiąc o R, możesz zainteresować następujące posty na blogu: na temat używania R z Cytoscape ( http://www.vesnam.com/Rblog/viznets1 ) oraz na temat używania R z Gephi ( http://www.vesnam.com/ Rblog / viznets2 ).

Na rozległych list z analizy sieci i oprogramowania do wizualizacji , w tym niektóre porównania i opinie, może chcesz sprawdzić następujące strony: 1) http://wiki.cytoscape.org/Network_analysis_links ; 2) http://www.kdnuggets.com/software/social-network-analysis.html ; 3) http://www.activatenetworks.net/social-network-analysis-sna-software-review .


8

https://gephi.github.io/ mówi, że może obsłużyć milion krawędzi. Jeśli wykres ma 1000000 wierzchołków i tylko 50000 krawędzi, wówczas większość twoich wierzchołków i tak nie będzie miała żadnych krawędzi.

W rzeczywistości specyfikacja Gephi jest podwójna z twojego przykładu: „Sieci do 50 000 węzłów i 1 000 000 krawędzi”


8

Myślę, że w Gephiobliczu problemów z brakiem pamięci potrzebujesz co najmniej 8 GB pamięci RAM. Chociaż liczba krawędzi nie jest bardzo duża.

Być może bardziej odpowiednie byłoby w tym przypadku narzędzie GraphViz. Jest to narzędzie wiersza polecenia do wizualizacji sieci i przypuszczalnie byłoby bardziej odporne na rozmiar wykresu. Co więcej, jak pamiętam, w GraphVizcelu ułatwienia obliczeń można użyć wstępnie obliczonych współrzędnych.

Próbowałem znaleźć rzeczywiste przykłady użycia GraphVizz dużymi wykresami, ale nie udało mi się. Chociaż znalazłem podobną dyskusję na temat nauk obliczeniowych .


4

Zgłaszanie się: skończyłem z kodowaniem graphml i używaniem YEd do wizualizacji (tylko dlatego, że znam tę kombinację. Założę się, że gephi lub graphviz będą działać dobrze, a może nawet lepiej). Ponieważ obliczyłem położenie wszystkich węzłów, pamięć nie była tak dużym problemem. Kodowanie graphml jest trochę łatwiejsze w porównaniu do kodowania svg, ponieważ nie muszę jawnie określać położenia krawędzi.


2

PajekXXL jest zaprojektowany do obsługi ogromnych sieci. Ale Pajek jest również rodzajem dziwnego programu z nieintuicyjnym interfejsem.


2

Poleciłbym użyć Graphexp. Gephi jest wysoce zależne od pamięci RAM komputera, która jest oczywiście ograniczona. Z drugiej strony, Graphexp wyświetla tylko ograniczoną liczbę Węzłów, przez które można nawigować do innych węzłów. Wizualizowałem wykres z 700 milionami wierzchołków, używając Graphexp jako interfejsu użytkownika i Janusgraph z HBase jako pamięcią zaplecza. https://github.com/bricaud/graphexp


Naprawdę? dla mnie zaczyna się dusić, gdy próbuję pokazać więcej niż 100 wierzchołków
— BrDaHa

Szybkość zależy głównie od bazy danych zaplecza i mocy obliczeniowej. Graphexp to tylko interfejs użytkownika.
— Sandeep Kumar,

Zdaję sobie z tego sprawę, ale przez „dławienie” mam na myśli częstotliwość odświeżania spadającą do 1-2 fps podczas animacji węzłów pojawiających się na ekranie. Warto zauważyć, że jest to najnowsza wersja Safari
— BrDaHa,

0

Spójrz na grafikę , mogą one obsługiwać węzły i krawędzie 1Mil.


Tak, Graphistry to jedyne interaktywne narzędzie wizualne dla dużych wykresów, ponieważ działa dla Ciebie na procesorach graficznych.
— Leo Meyerovich,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.