2012-08-31 5 views
5

Potrzebuję wyświetlić wykres z około 1000 węzłów i krawędzi. Węzły powinny być przeciągalne, a wszystkie powinny działać w czasie rzeczywistym bez ekranów oczekiwania.Zestaw narzędzi do wizualizacji wykresów JavaScript z wysoką wydajnością (500-1000 węzłów)

Tak, już sprawdziłem wiele frameworków wizualizacyjnych grafów js i wciąż nie mogę znaleźć rozwiązania.

Na przykład, nakręciłem "JavaScript InfoVis Toolkit" z pytania: What's the fastest, pure Javascript, Graph visualization toolkit? Rozłącza się na 250 węzłach.

Wszystkie frameworki działają dość szybko, ale tylko w przypadku 100-200 węzłów. A na 500 węzłach i krawędziach wyrzucają wyjątki lub zawieszają się w ogóle.

Pytanie brzmi: czy istnieje framework js, który może działać z 500-1k węzłów/krawędzi, czy też powinienem wdrożyć coś samemu, używając canvas/WebGL.

+0

Czy możesz udostępnić obraz przedstawiający wygląd wykresu? – MikaelEmtinger

+0

Jak tutaj: http://thejit.org/static/v20/Jit/Examples/ForceDirected/example1.html W tym samym czasie użytkownik powinien zobaczyć nie wszystkie 1000 węzłów :) Użytkownik zobaczy tylko część węzłów, które pasują na ekranie (Jak część powiększonego obrazu) –

+1

Ok, to nie będzie łatwe do zrobienia, niestety - ale nie niemożliwe. Miałem nadzieję na coś bardziej sztywnego (jak diagram lub coś podobnego), które mogłoby zostać połączone w kilka wywołań rysowania WebGL. To niepokojący efekt wiosny. Aby przyspieszyć, musisz wykonać symulację sprężyny na GPU używając tekstur zmiennoprzecinkowych ... Skomplikowane;) – MikaelEmtinger

Odpowiedz

2

Czy próbowałeś D3? http://d3js.org/

+2

Dzięki, to jest fajna biblioteka! Próbowałem "wymuszony" przykład z 1k węzłów, ale bez linków i działa trochę wolno. Myślę, że powinienem spróbować przykład bez obliczeń "siły", powinien działać znacznie szybciej. –