From the website:
With GraphStream you deal with graphs. Static and Dynamic.
You create them from scratch, from a file or any source.
You display and render them.
From Getting Started:
GraphStream is a graph handling Java library that focuses on the dynamics aspects of graphs. Its main focus is on the modeling of dynamic interaction networks of various sizes.
The goal of the library is to provide a way to represent graphs and work on it. To this end, GraphStream proposes several graph classes that allow to model directed and undirected graphs, 1-graphs or p-graphs (a.k.a. multigraphs, that are graphs that can have several edges between two nodes).
GraphStream allows to store any kind of data attribute on the graph elements: numbers, strings, or any object.
Moreover, in addition, GraphStream provides a way to handle the graph evolution in time. This means handling the way nodes and edges are added and removed, and the way data attributes may appear, disappear and evolve.
You can also get an idea of the range of capabilities from the GraphStream 1.0 video.