Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Latest commit d574cb0 Oct 17, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs 4.0.5 release Oct 17, 2019
examples/com/mxgraph/examples/swing release Sep 7, 2016
lib 4.0.5 release Oct 17, 2019
src/com/mxgraph 4.0.5 release Oct 17, 2019
.travis.yml Added travis config Jun 4, 2019 Added link to project with Maven support Jun 5, 2019
build.xml 4.0.5 release Oct 17, 2019
license.txt release Jun 2, 2014
pom.xml 4.0.5 release Oct 17, 2019


Note: JGraphX is not actively developed, nor do we actively follow the tag on Stack Overflow. However, we will consider well tested PRs relating to existing functionality. The issues tracker is closed on purpose. Do not submit issues to the mxGraph project that are related to this project, they will be closed.

We don't properly support Maven or publish to Maven Central. If that's an issue, use

JGraphX is a Java Swing diagramming (graph visualisation) library licensed under the BSD license. Although, the package names use that of 'mxGraph', this library is not called mxGraph. mxGraph is the JavaScript diagramming library -

It was originally named JGraph through versions 1-5, this technically is version 6, but we changed the name to reflect the fact that the entire codebase and API was rewritten from scratch.

JGraphX provides functionality for visualisation and interaction with node-edge graphs (not charts). Example applications that you might write with it are a workflow editor, an organisational chart, a business process modelling tool, a UML tool, an electronic circuit diagrammer, network/telecoms visualisation (you get the idea, things with nodes and edges that connect those nodes, a mathematical graph).

JGraphX also includes functionality like XML stencils support, various import/export and layouting (automatically node/edge positioning).

Each tag in github creates a downloadable file at Older versions are at

There is a user manual that explains the basic architecture.

There are various examples,, from the usual HelloWorld to a more complete application example called GraphEditor.

There's also the API specifications at

There is a 'jgraphx' tag on Stackoverflow -, but please ensure you understand the SO FAQ and posting guidelines prior to posting. To post on SO you must 1) have a question , 2) that question be programming related and 3) use the 'jgraphx' tag.

JGraphX shares the changelog and version number of mxGraph, our JavaScript implementation of the same idea. This is because many people use the Java API on the server with mxGraph, so the model APIs have to be identical on each release. You have to filter the changelog, for "Java" in the square brackets at the end of each line to see the changes that only apply to Java.

You can’t perform that action at this time.