yFiles for Java Product Types
yFiles for Java is available in four different distributions. Each distribution represents a combination of yFiles components.
Distribution Types
Basic Distribution
yFiles Basic distribution contains only the yFiles Basic component.Layout Distribution
yFiles Layout distribution contains both the yFiles Basic and yFiles Layout components.Viewer Distribution
yFiles Viewer distribution contains both the yFiles Basic and yFiles Viewer components.Complete Distribution
yFiles Complete distribution contains the yFiles Basic, yFiles Layout, and yFiles Viewer components.Distribution Features
The following table provides an overview of the features of the yFiles for Java distributions.
| yFiles for Java Distribution | |||||
|---|---|---|---|---|---|
| Basic | Layout | Viewer | Complete | ||
| Basic Component | efficient Graph data type implementation for the structural information of graph elements | ![]() |
![]() |
![]() |
![]() |
| wide variety of graph and network algorithms | ![]() |
![]() |
![]() |
![]() |
|
| Layout Component | support for geometry (position/size) of graph elements | ![]() |
![]() |
||
| algorithms for automatic layout of graphs and diagrams | ![]() |
![]() |
|||
| algorithms for automatic layout of connections in diagrams | ![]() |
![]() |
|||
| automatic label placement | ![]() |
![]() |
|||
| Viewer Component | 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 | ![]() |
![]() |
|||
| Swing-based GUI elements for properties and parameters | ![]() |
![]() |
|||
| 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 Components
There are currently three different yFiles components, which can be combined as four different yFiles for Java distributions (see above).
Basic Component
The yFiles Basic component is part of each distribution.
It includes the following Java packages: y.algo, y.base,
y.geom, y.util and y.util.pq.
yFiles Basic contains essential classes and data types for graph analysis tasks. It ensures the highly efficient implementation of advanced data types such as Graph and Priority Queue. Furthermore, it makes available a wide variety of graph and network algorithms which in turn form an indispensable toolkit for a range of network analysis tasks.
Layout Component
The yFiles Layout component is combined at least with the yFiles Basic component.
It includes the following Java packages: y.layout
and all y.layout.* subpackages.
yFiles Layout builds upon yFiles Basic. It offers you 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 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 Component
The yFiles Viewer component is combined at least with the yFiles Basic component.
It includes the following Java packages: y.anim, y.io
and y.io.* subpackages, y.option,
y.view, y.view.hierarchy,
and y.view.tabular.
yFiles Viewer also builds upon yFiles Basic. It offers you a powerful graph viewer component, which is showcased in the yEd graph editor application and other Swing-based GUI elements. Other impressive features of yFiles Viewer are its ability to support diverse graph and image file formats (GraphML, YGF and JPG, GIF) and its excellent printing capabilities.










