Tools
This section contains some satelite tools developed on top of Small Text that enrich the functionalities provided by the
utility package of the library.
They are:
- GraphViewer
- GraphLabelFinder
- Rank&Select
[Download the latest version]
A simple 100% Java, Swing based application able to draw graphs. The rendering engine is provided
by the JUNG library. The GraphViewer is able to render graphs
with thousands vertices and edges, showing the node labels and the edge attribute values; it gives to the user a way to explore the graph by
means of zooming and moving operations. The aplication is able to open files in GraphML
format eventually gzipped.
The supported GML format is minimal. Given a GML file the application is able to read and render the structure of the graph and some properties
of the node and edge tags. In particular it recognizes the "label" property eventually associated with the node tag and storing
the textual label of the represented node. Each edge tag can be decorated with an attribute property wich value will be read and showed by the viewer.
Such attribute must be declared in the main graph tag in order to be recognized.
If the graph is centered in one particular vertex (the pivot vertex) its id
can be declared in the main graph tag so that it will be drawn with a special shape by the viewer.
With the GraphViewer the user can hide edges which attribute values are under a certain threshold, collapse the vertices with one single outgoing
edge and drop the pivot vertex as a trivial clustering function. Moreover the user can select the layout used to render the graph
choosing it from a set of predefined layouts.
[Download the latest version]
A 100% pure Java graphical front end (swing based) to perform searches over the textual vertex labels of a graph. Given a regex pattern
this application matches it to the labels provided by the underlying graph labeler and shows the matching
strings. The input regex must be a
Java regex compliant string.
Given an input pattern P the application matches the derived pattern *.P.* against the labels
sequentially provided by the opened labeler.
The user can then select a label of her interest and ask to perform a breadth first search starting from the corresponding vertex in the graph
and limiting the visit to a maximum distance of K. The visited portion of the graph, as long as the information associated to it such as the
vertex labels and the attribute values of the edges are dumped on a GraphML file
on disk eventually compressed with GZIP. The BFS is performed on the graph stored in WebGraph format. The
resulting GML file can be showed by the GraphViewer application.
[Download the latest version]
A library to build a succint data structure to support Rank&Select queries. It contains binaries, sources and javadoc.
To have a deeper overview on the Rank&Select technique please refer to the following papers:
-
González, R., Grabowski, S., Mäkinen, V., and Navarro, G. 2005.
Practical implementation of rank and select queries.
In Poster Proceedings Volume of 4th Workshop on Efficient and Experimental Algorithms
(WEA'05) (Greece, 2005). CTI Press and Ellinika Grammata, 27 38.
-
Kim, D.-K., Na, J.-C., Kim, J.-E., and Park, K. 2005b.
Efficient implementation of rank and select functions for succinct representation.
In Proceedings of the 4th Workshop on Efficient and Experimental
Algorithms (WEA'05). Lecture Notes in Computer Science, vol. 3503. Springer-Verlag, Berlin, Germany,
315 327.