Skip to content

danamlund/adjmatrix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Adjacency matrix code visualizer

What

This tool takes some .jar files as input and generates an adjacency matrix over the dependencies between the classes in the .jar files.

The adjacency matrix is visualized through a generated stand-alone .html file. This html file have the graph information and some javascript that visualize the adjacency matrix and lets you filter, zoom, order, color, and group the matrix how you want.

The dependencies between classes is generated using classycle.

You can also supply the tool with a .tgf file. TGF files lets you generate an adjacency matrix from any graph.

There are example outputs available at the Adjacency matrix code visualizer page.

How

The default behavior is to generate a file called output.html. Drag-dropping your library-to-visualize.jar file onto adjmatrix.jar should have the same effect.

$ java -jar adjmatrix.jar library-to-visualize.jar
$ firefox output.html

You can define a custom output file/location using -out.

$ java -jar adjmatrix.jar -out ../myoutput.html library1-to-visualize.jar library2-to-visualize.jar
$ firefox ../myoutput.html

The tool supports classycle arguments, so you can define which classes to include/exclude. See more at the Classycle Usage Guide.

$ java -jar adjmatrix.jar -includingClasses=java.util,java.function rt.jar
$ firefox output.html

Bugs

  • The javascript is bad, and I only tested it on Chromium 48.0 and Firefox 45.0.
  • The UI is bad. It should be separated completely independent groups: node selection, node sorting, and node coloring. Fixing this would mean porting the “sort by similarity” algorithm to javascript, but that algorithm is the slowest part of the html generation.

About

Adjacency matrix code visualizer

Resources

License

Stars

Watchers

Forks

Packages

No packages published