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 that we sell commercially only (it isn't open source) - https://www.jgraph.com.

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 https://github.com/jgraph/jgraphx/tags. Older versions are at https://www.jgraph.com/jgraphdownload.html.

There is a user manual https://jgraph.github.io/mxgraph/docs/manual_javavis.html that explains the basic architecture.

There are various examples, https://github.com/jgraph/jgraphx/tree/master/examples/com/mxgraph/examples/swing, from the usual HelloWorld to a more complete application example called GraphEditor.

There's also the API specifications at https://jgraph.github.io/mxgraph/java/docs/index.html

There is a 'jgraphx' tag on Stackoverflow - https://stackoverflow.com/questions/tagged/jgraphx, 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, https://www.jgraph.com/mxchangelog.html for "Java" in the square brackets at the end of each line to see the changes that only apply to Java.

Code Quality Rank: L1
Programming language: Java
Tags: Science    

JGraphX alternatives and related libraries

Based on the "Science" category

Do you think we are missing an alternative of JGraphX or a related project?

Add another 'Science' Library

JGraphX Recommendations

There are no recommendations yet. Be the first to promote JGraphX!

Have you used JGraphX? Share your experience. Write a short recommendation and JGraphX, you and your project will be promoted on Awesome Java.
Recommend JGraphX

Recently added JGraphX resources

Do you know of a usefull tutorial, book or news relevant to JGraphX?
Be the first to add one!