yFiles for Java (Swing)
Diagramming made simple

yFiles for Java (Swing) is an extensive Java™ class library for the Java Swing world. The current 4.x line requires Java 8, was tested with Java 25, and uses a modern API that contains UI controls for drawing, viewing, and editing diagrams — as well as our many advanced graph layout algorithms for automatically arranging complex graphs.

You have questions about yFiles for Java?

Get in touch to discuss your specific challenges with our diagramming experts. We're here to provide the guidance you need.

Build intuitive, flowing diagrams with Java (Swing)

The yFiles diagramming library enables seamless visualization of complex networks and relationships, making it easy to start new projects or enhance existing ones. With expert support from core developers, any challenges can be resolved efficiently, ensuring a smooth and successful experience.

Begin transforming complex networks and dynamic relationships into clear, impactful diagrams today with the organic layout in yFiles.

Test yFiles free of charge

Technical features

Developer-friendly

Extensive Developer's Guide and API documentation , runtime type-checking, debugging tools, plus code completion and quick API lookup in most IDEs.

100% Swing

Provides a pure Swing component for displaying diagrams. Leverages Java 2D for all visualizations.

Self-contained

Completely self-contained with no dependencies besides Java's core library.

NonNull/Nullable annotations

Integrates well with JVM languages that provide null-safe type systems, for example Kotlin.

Supports Java 8 and newer

Supports Java language features including lambda expressions, default methods, streams, generics, and more, and was tested with Java 21 and 25.

yFiles in action

Interactive demos

Explore the advanced features of yFiles through our interactive demos. The demos require JDK 21 or newer as they use modern language features.

Interactive demos

Source-code demos

Explore our versatile demos' source code on GitHub to enhance your project.

GitHub

Further information

Working resources

Find helpful resources like Developer's Guides, API documentation and videos.

Support hub

License information

Find the right license and accurate pricing information for your specific use case.

Licenses

Software license agreement

Read the terms and conditions for using yFiles in your projects.

SLA

Technical requirements

Building applications based on yFiles for Java (Swing) requires the Java SE Development Kit 8 or newer. Running the demo applications requires JRE 21 or newer.
If you need to support Java 7 and earlier, we recommend the 2.x line of yFiles for Java.

yFiles for Java (Classic)

For projects that need to support legacy Java versions before Java 8, the 2.x line of yFiles for Java supports Java 7 and earlier. It uses an older API design and provides fewer features out-of-the-box than the 4.x line.
In new Java Swing projects, we recommend starting development with the 4.x line of yFiles for Java (Swing).

Discover 11 reasons why developers across all major platforms trust yFiles, the superior diagramming SDK

Getting started with yFiles for Java

Tailored options for every step of your network visualization journey

Discover how easy it is to explore, evaluate, and implement yFiles for Java in your projects. Start with the platform-specific documentation, try the demos, or build a prototype in your own environment. There are straightforward ways to evaluate and license yFiles without hidden costs or commitments.
No subscription, no credit card required—just a quick start with your email address.

Explore the Demos

Explore yFiles features in our interactive demos or try sample code in the yFiles Playground.

The website demos and the Playground run on yFiles for HTML. The graph visualization features they demonstrate are also available in yFiles for Java, with platform-specific APIs and implementation.

Try for Free

Evaluate the complete yFiles SDK at no cost. Build prototypes in your own environment with full support from the yFiles core developers.

Start your free trial by visiting our evaluation center.

Buy the SDK

yFiles is available as a Term License, from a Single Developer License up to Project and Site Licenses—choose the tier that fits your team and project, with no royalties.

Not sure which tier fits, or need something more specific? We'll find the right solution together.

Got questions about
yFiles for Java?

chris

Christian Brunnermeier

Team Lead Java

Email: hello@yworks.com
Phone: +49 7071 9709050

Get in touch

Get started right away! Test yFiles for Java (Swing) free of charge.

Download yFiles now!

Choose your next steps

Get connected

Connect with our Customer Success Team regarding your ideas or projects.

Connect with the real graph drawing experts.

Dive deep

Get more detailed information about specific yFiles topics.

Download yFiles

Try yFiles free of charge.

Download the yFiles trial version.