Gần đây tôi đã khám phá một số thư viện nơi tôi có thể hình dung đồ thị từ Neo4j, nhưng không có cái nhìn rõ ràng muốn chọn, vì vậy tôi có một vài suy nghĩ tôi muốn chia sẻ.Neo4j graph visualizing library
Yêu cầu và mong muốn của tôi - sau khi tìm kiếm thông qua REST API với truy vấn cypher trực quan hóa biểu đồ với tất cả các mối quan hệ, nút. Và kết quả làm cho tương tác - có thể kéo/thả ... cơ hội để tiết lộ các nút/rels khác khi nhấp chuột. Nhập các nút thông qua dữ liệu json và có thể hiển thị nhanh nhất tối đa 400 phần tử.
Vì vậy, tôi đã khám phá nhiều hơn các thư viện khác:
Three.js - chủ yếu cho 3D. (Nếu tôi không cần 3D thì tốt hơn không chọn cái này)
Arbor.js - vẽ lá tùy thuộc vào bạn, chủ yếu là thư mục trình bày
VivaGraphJS - dễ sử dụng, nhưng hầu như không có tài liệu hướng dẫn :(
D3.js - trông tốt, nhưng sử dụng SVG
Cytoscape.js - có vẻ tốt đẹp, nhưng tôi đọc mà tôi không thể sử dụng nó với Neo4j Is D3.js the right choice for real-time visualization of Neo4j Graph DB data tại sao
Processing.js -.? có nó ngôn ngữ của riêng tôi tương tự như Java. Tôi không có nhiều trong Java-l ngôn ngữ ike (chưa).
Và tôi có một vài câu hỏi:
1) Trải nghiệm của bạn - lợi ích, yếu của thư viện?
2) Tôi cho rằng tôi muốn sử dụng canvas được insted của SVG? (rất nhiều yếu tố nhỏ trên màn hình).
3) Arbor là thư viện đặc biệt để bố trí, nhưng những người khác không có thuật toán bố cục hoặc gì?
Tôi sẽ đánh giá cao bất kỳ ý kiến nào! :-)
có hội thảo trên web về trực quan hóa đồ thị vào ngày 5 tháng 9: http://info.neotechnology.com/0905-linkurious-register.html [không chắc chắn điều này có tuân thủ các quy tắc SO hay không, nếu không vui lòng xóa nhận xét này] –
Bạn không chỉ định yêu cầu của mình để không sử dụng trả trước SVG. Tại sao vậy. –
Theo như tôi quan tâm, để hiển thị đồ thị lớn, canvas là lựa chọn tốt hơn. (Đọc từ các diễn đàn khác nhau). –