yFiles for Java (Swing) Packages

Distribution Types

yFiles for Java 3.x is available in three different distributions. Each distribution represents a combination of yFiles for Java 3.x components.

Layout Distribution

The Layout distribution contains only the yFiles for Java 3.x Algorithms component.

Viewer Distribution

The Viewer distribution contains only the yFiles for Java 3.x Viewer component.

Complete Distribution

The Complete distribution contains both the yFiles for Java 3.x Algorithms component and the yFiles for Java 3.x Viewer component.
In addition, this distribution contains adapter classes that facilitate the usage of yFiles graph layout algorithms from the Viewer library.

Distribution Features

The following table provides an overview of the features of the yFiles for Java distributions.

yFiles for Java Distribution
LayoutViewerComplete
Algorithms Component
efficient algorithms-oriented graph structure implementation
wide variety of graph and network algorithms
algorithms for automatic layout of graphs and diagrams
algorithms for automatic layout of connections in diagrams
automatic label placement
Viewer Component
efficient graph structure implementation with support for the visual representation of graph elements
powerful graph viewer component for the presentation and creation/editing of diagrams
extensive user interaction support
support for nested graph structures
support for diverse input/output file formats for diagrams and export-only image file formats
printing support, incl. poster printing
animations and layout morphing

yFiles for Java Building Blocks

There are currently two different yFiles for Java components, which can be combined as three different yFiles for Java distributions (see above).

Algorithms

yFiles for Java 3.x Algorithms contains efficient algorithms and data structures for graph analysis tasks as well as state-of-the-art graph layout algorithms.

Analysis

yFiles for Java Algorithms provides essential classes and data types for graph analysis tasks. These include highly efficient implementations of advanced data types such as Graph and Priority Queue. Furthermore, the algorithms library contains a wide variety of graph and network algorithms which in turn form an indispensable toolkit for a range of network analysis tasks.

Layout

The algorithms library offers a perfect suite of graph layout algorithms which deliver you unrivaled opportunities. Diverse layout styles including hierarchic, orthogonal, or circular are provided as easy to integrate components that can be configured programmatically to suit most layout demands. In addition, yFiles for Java Algorithms provides edge routing algorithms that make it possible to easily route edges into existing diagrams. The different layout styles also now include several incremental algorithms, for example incremental hierarchical layout.

Viewer

The yFiles for Java Viewer component provides powerful Java Swing controls for displaying graphs, and makes available excellent graph interaction capabilities with the controls, convenient printing capabilities, and export to a variety of output formats.

Visualization

The controls can display arbitrary graphical objects based on a graphics engine tailored to support both flexible customization and high performance rendering of complex graphics.

Editing

yFiles for Java makes it easy to add custom editing functionality to your Java Swing application. The library offers full clipboard and Undo/Redo support.

I/O

The graphics displayed in the yFiles for Java graph control can be exported to a variety of bitmap based image formats.

yFiles for Java uses the XML based GraphML format as its native exchange file format for graph structure and layout information.

With yFiles for Java, high quality printing support can be easily integrated into your application.

Why, how, what? —
Just ask the diagramming experts!

Our team is happy to advise you – no strings attached. Let's talk about your project and find the perfect solution for your needs!

E-mail: hello@yworks.com

The data you enter will only be used to contact you regarding your request.
Learn more in our privacy policy.