Thư viện Java nguồn mở sau đây có một vài thuật toán có thể giúp đặt ra đồ thị phẳng. http://open.trickl.com/trickl-graph/index.html
Đặc biệt, các lớp sau đây cung cấp các giải pháp phân tích để các vấn đề:
ChrobakPayneLayout (dựa trên Boost C++ thực hiện bởi Aaron Windsor) http://www.boost.org/doc/libs/1_37_0/libs/graph/doc/straight_line_drawing.html
FoldFreeLayout (dựa trên Neo Bản địa hóa phân phối miễn phí trong Mạng cảm biến * Nissanka B. Priyantha, Hari Balakrishnan, Erik Demaine và Seth Teller)
Những gì bạn có thể muốn làm là sử dụng một cái gì đó như thế này như là "nỗ lực" đầu tiên đảm bảo không có chồng chéo, mặc dù có thể không nhìn tuyệt vời. Sau đó, bạn có thể áp dụng một thuật toán lực-đạo để không gian ra các nút công bằng hơn.
Thật không may, thư viện vừa mới được phát hành nên không có tài liệu. Tuy nhiên nó có thể hữu ích bằng cách cung cấp một số mã thực tế thay vì chỉ là lý thuyết.
Nguồn
2011-12-07 16:15:49
Bạn có muốn biết cách tối ưu hóa đầu ra của graphviz hay cách thực hiện tối ưu hóa chồng chéo cạnh nhau không? –
Chủ yếu là các cựu nhưng tôi quan tâm đến sau này quá. – jameszhao00
Tôi đã nghiên cứu thêm và đối với biểu đồ có kích thước của tôi, bố cục đa tỷ lệ là tùy chọn duy nhất. Vì vậy, tại thời điểm này tôi đang xem SFDP. Một thuộc tính SFDP quan trọng là cấp, trong đó xác định số lượng cân bạn muốn. – jameszhao00