yFiles for Java (Swing)
Diagramming made simple
yFiles for Java (Swing) is an extensive Java™ class library for the Java Swing world. The current 3.x line requires Java 8 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.

We´d love to help you. Reach out and we'll get in touch with you.
Your message has been sent.

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
Extensive Developer’s Guide and API documentation, runtime type-checking, debugging tools, plus code completion and quick API lookup in most IDEs.
Provides a pure Swing component for displaying diagrams. Leverages Java 2D for all visualizations.
Completely self-contained with no dependencies besides Java's core library.
Integrates well with JVM languages that provide null-safe type systems, for example Kotlin.
Supports Java language features including lambda expressions, default methods, streams, generics, and more.
yFiles in action
Interactive demos
Explore the advanced features of yFiles through our interactive demos. More than 300 demos created with yFiles for HTML to try directly in your browser.
Interactive demosSource-code demos
Explore our versatile demos’ source code on GitHub to enhance your project.
GitHubFurther information
Working resources
Find helpful resources like Developer’s Guides, API documentation and videos.
Support hubLicense information
Find the right license and accurate pricing information for your specific use case.
LicensesTechnical requirements
Building applications based on yFiles for Java (Swing) requires the Java SE Development
Kit 8 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 3.x line.
In new Java Swing projects, we recommend starting development with the 3.x line of yFiles for Java (Swing).
Discover 11 reasons why developers across all major platforms trust yFiles, the superior diagramming SDK
Powerful and Diverse Layout Algorithms
A wide variety of layouts, flexible configurations, and superior performance.
- Wide variety of different layout types
- Incremental layout algorithms
- Combination of multiple layouts
- Advanced edge-routing
Advanced Visualization Capabilities
High-quality visualizations that clarify and inform.
- High-quality rendering
- Interactive visualizations
- Dynamic visualizations
- Customization of visual styles
- Support for different graph types
Flexibility and Customizability
Fully customizable layouts and styles for any use case.
- Highly customizable layouts
- Flexible API
- Support for multiple styles
- Adaptability to different data structures
- Dynamic customization
High Performance
Efficient handling and rendering of large graphs.
- Efficient layout algorithms
- Scalability
- Performance tuning options
- Optimized rendering engine
- Efficient handling of large graphs
Integration with Various Platforms
Seamlessly integrates with existing systems and frameworks.
- Cross-platform support
- Framework independent
- API consistency
- Modular architecture
- Cloud and on-premise compatibility
Interaction and Animation Features
Comprehensive components for dynamic, interactive graphs.
- Comprehensive interaction framework
- Advanced animation capabilities
- Customizable user interactions
- Touch and gesture support
- Dynamic updates
- Smooth transitions for layout changes
Universal Data Support
No restrictions on data sources or types—total flexibility.
- Data source independence
- Real-time data updates
- No forced cloud dependencies
- Data ownership remains with the customer
- No specific data format required
Security and Data Privacy
GDPR compliant, no forced cloud use, full data control.
- GDPR-compliant
- No forced cloud dependencies
- Full control over infrastructure
- End-to-end data security
- Data ownership remains with the customer
Fast and Competent Support
Quick responses, direct access to core developers.
- Direct contact with core developers
- Quick response times
- Professional support
- Comprehensive resources
Long-Term Market Presence and Expertise
25 years of experience, mature, future-proof solutions.
- 25+ years of experience
- Mature and stable software
- Future-proof
- Proven in diverse industries
- Commitment to ongoing improvements
Comprehensive Documentation
Extensive docs, guides, 300+ demos, and tutorials.
- Detailed API documentation
- Developer guides
- Extensive code samples
- Step-by-step tutorials
- 300+ live source code demos