Prefux is an attempt to implement or migrate the Prefuse library (http://prefuse.org) to JavaFX technology.
Prefuse is a great Java-based toolkit for building interactive information visualization applications. Prefuse supports a rich set of features for data modeling, visualization, and interaction. It provides optimized data structures for tables, graphs, and trees, a host of layout and visual encoding techniques, and support for animation, dynamic queries, integrated search, and database connectivity.
The Prefuse library is licensed under the BSD license. All modifications and contributions to this fork are licensed under the BSD license too.
The main goal of this fork is to implement force based graph layout visualization in JavaFX. If there is time, further functionality will follow. This library is not compatible to the Prefuse library. The technologies Swing and JavaFx are so different, that it makes no sense to map the prefuse API one to one to JavaFX technology and there is no real UI visualization interface in Prefuse that is independent of the Swing libraries. But the main concepts should be the same (actions, renderers, layouts) so that it should be possible to convert code that is more or less Swing independent (e.g. graph layouts, data model) to this library.
The toolkit distribution uses the following organization:
+ prefux |-- build Directory where compiled classes and jar files are placed |-- data Various example data files used by the demo applications |-- demos Demo applications and applets showing the toolkit in use |-- doc Documentation. The Javadoc API files reside here once generated |-- lib Third-party libraries useful with prefux and their licenses |-- src The source code for the prefux toolkit |-- test JUnit tests for the toolkit (still a bit sparse at the moment)
prefux is written in Java 8, using the JavaFX library. To compile the prefux code, and to build and run prefux applications, you’ll need a copy of the Java Development Kit (JDK) for version 8 or greater.
We also recommended (though by no means is it required) that you use an Integrated Development Environment such as Eclipse (http://eclipse.org). Especially if you are a Java novice, it will likely make your life much easier.