jPlot - A Java Plotting Tool

What is jPlot?

jPlot is a java version of the famous xplot by Tim Shepard. 

The main goal behind the development of jPlot was to make the plotting tool used with tcptrace more portable. jPlot was developed at the Internetworking Research Lab (IRG), at Ohio University, as part of Dr. Shawn Ostermann's tcptrace project.

Tim Shepard's original xplot is an amazing piece of software. It was designed to be extraordinarily fast and efficient and as such, it has only a very thin user interface. Those design goals, however, make xplot extremely difficult to port to new architectures and also make it difficult to use for the casual user. jPlot was designed to address these limitations while keeping as much of the original efficiency as possible. We thank Tim Shepard for his hard work on xplot and hope that jPlot can live up to his high standards.

jPlot's Features:

jPlot preserves all of the features of the original xplot. It does the following:


Needs Java 1.3:
This program uses some features of Java that were introduced in version 1.3. Hence this program will not compile under older versions of Java.

Does not work perfectly with Java 1.4:
I tested this program under the newly released Java Version 1.4. It compiles fine and works partially. Features like

saving PNG
quick exit
some mouse/key bindings (SHIFT+mouse-drag, CTRL+mouse-drag)

failed under this version. Probably Java Runtime Environment (JRE) 1.4 is not yet stable.

Compiling the program:

Simply compile the file "" as follows:


Linux/UNIX/OSX users may use the Makefile included in the distribution. Just correct the path to the Java compiler in the variable JAVADIR, and then run:

        `make all`

Running the program:

Having generated all the required class files (see "compiling the program" above), the program could be loaded as follows:

        `java jPlot [options] file [files]`

Help with all the features of jPlot can be found using the -h/-help option as follows:

        `java jPlot -h`


Mouse Bindings:

Color Options:

Save As... Options:

Plots can be saved to files in the following formats:


Accelerator Keys:


E.g.. 1: This plot shows the plotting primitives mentioned above, that could be used to generate custom plots .

Egg. 2: This plot shows a zoomed in version of the above plot

Egg. 3: This plot shows a time sequence graph generated by tcptrace

Egg. 4: This plot showed a zoomed in section of the above plot

Egg. 5 This plot is another demonstration of jPlot's capabilities

Download jPlot:

jPlot.1.0.0beta.tar.gz (gzipped tar file) (zip file)


Avinash Lakhiani (

Page written and maintained by:

Avinash Lakhiani
Research Assistant
Internetworking Research Lab (IRG)
Ohio University

Last Modified: Aug 26, 2002