The early years: 1993-1999
XmdvTool originated in 1993, when Matt Ward decided to merge several
small programs he had written to visualize multivariate data in
order to evaluate the effectiveness of each. The original techniques
included were parallel coordinates, scatterplots, and star glyphs.
He later added dimensional stacking, a technique he and two of
his students (Jeff LeBlanc and Rajeev Tipnis) had created and
implemented in a tool called N-Land. The techniques were linked
via a highlighting mechanism controlled by N sliders, one for
each dimension. Version 1.0 was developed using Athena Widgets
and the Widget Creation Library. It had about 1000 lines of C code and
about 600 lines of a resource file to define the interface. It
was released to the public domain during the summer of 1994, and
described in a paper at the Visualization '94 conference.
One of the
reviewers of this paper commented that the program really needed
direct manipulation to support the selection/highlighting process.
Thus Ward and Allen Martin, a WPI graduate student, added functionality
to support interactive specification and modification of the selection
region, called the "brush", on the data displays themselves,
rather than via separate widgets. This work formalized the notion
of an N-dimensional brush, as opposed to the screen-space techniques
that had been used before. By working in data-space rather than
screen-space, users could specify a hyperbox of interest, which
could then be highlighted, deleted, or masked. Also, the concepts
of a ramped brush, which allowed points to belong to a brush in
varying degrees, and a composite brush, built from logical combinations
of existing brushes, weredeveloped. This work was reported at
Visualization '95, and version 2.0 of the system was released
that year. The code had grown to approximately 10,000 lines of
C code and 1000 lines of resource file.
source code was distributed free-of-charge, several researchers
made their own variations on the code. Torsten Timm, a student
at the University of Erlangen, released the unofficial version
3.0 in 1996. His extensions allowed data-driven glyph positioning,
labeling of data points, and other enhancements.
developed at WPI, included many features beyond those in Version
2.0, including interactive enabling and disabling of dimensions,
arbitrary zooming, extended Tukey box plots for visualizing statistics
of selected data, a reconfigured user interface, and an improved
help facility. It was released in 1997.
In 1998, Matt
Ward and Elke Rundensteiner received a 3-year NSF grant to investigate
ways of visually exploring large multivariate datasets. The award,
NSF:IIS 9732897, is being used to fund 2 graduate students: one
in visualization and the other in databases. The key concept of
the research is to use multiresolution techniques and hierarchical
clustering/partitioning methods to make large dataset analysis
developed by Ying-Huey Fua at WPI, represented a major change
from numerous perspectives, not the least of which was that it
no longer depended on the X-Window environment. Using OpenGL and
Tcl/tk, the package would now run on both Unix and Windows platforms.
A new interface, featuring Windows-like menus and icons to represent
the different display modes, has a very different look-and-feel
from previous versions. This version also introduced a new method
for exploring large multivariate data sets, based on hierarchically
clustering the data and presenting aggregation information rather
than just the raw data. Hierarchical parallel coordinates, described
in a paper at Visualization '99, show cluster summarizations via
shaded bands rather than single polylines, conveying both cluster
extents and size. Bands are colored via their location in the
hierarchy, such that child and parent clusters have similar clusters.
A new brushing paradigm, called structure-based brushing, was
also introduced. This allows users to navigate the hierarchy,
selecting subtrees for which they would like to display more or
less detail. This new technique for interaction was reported in
a paper at Information Visualization '99, and also in an extended
paper in IEEE Transactions on Visualization and Computer Graphics.
The new millenium: 2000-2004
The XmdvTool version 4.1 was released on October 4, 2000. It extends the support for hierarchically
structured data to scatterplot matrices, star glyphs, and dimensional
stacking. Using the same coloring and navigation strategies pioneered
in Version 4.0, Jing Yang has created a consistent and complete
strategy for large-scale multivariate data exploration. She has
also eradicated several bugs found in version 4.0, such as bands extending
beyond the drawing area boundaries, and made many improvements
in the efficiency of the code.
The XmdvTool version 4.2 was released on October 1, 2001. It finally tied together
the visualization front-end with a database backend. Using a novel indexing structure for hierarchies, Daniel Stroe has developed
efficient query mechanisms for all navigation operations on the structure-based brush. He has also experimented with caching and
prefetching techniques to further improve performance. All of these additions have been integrated into an Oracle backend which
communicates seamlessly with the existing visualization front-end. A new glyph placement dialog is added to XmdvTool in this version. You could now place glyphs according to the order of
one of their dimensions, place them in a 2D space composed of two of their dimenisons, or even place them using their principal components. You could even space the glyphs or deduce the overlap to make the pictures look better! The glyph placement is now limited to the flat displays.
XmdvTool Test Version 5.0 was released on July 12, 2002 and Beta Version 5.0 was Released on March 20, 2003. The 5.0 version improves upon XmdvTool 4.2 in the following aspects:
- Database support: Database connectivity to Oracle 8i added to allow for
more efficient and faster access to existing, larger databases.
- User interface: New and improved user interface. Includes a Quick Menu
to speed up your operations, plus many more toolboxes to assist in
data navigation and tool navigation.
- Data investigation: Distortion capability added to all displays
which allows separate zooming of horizontal and vertical axes for
more detailed investigations of interesting data zones. Dimension
selection/de-selection and re-ordering also added to allow
customized selection of interesting dimensions.
- How-To support: Help menu expanded to guide you through the
extended set of features.
XmdvTool 6.0 Alpha Version was released on September 1, 2003. It improves upon XmdvTool 5.0 in the following aspects:
- Dimension Reduction (Tools->Dimension Reduction): Visual Hierarchical Dimension Reduction (VHDR) added to allow for more
efficient and effective exploration of high dimensional dataset. InterRing
is used as the interface of VHDR.
- Time Series Animation (Tools->Time Series Animation): It is added to allow you to set a dimension as the "time" dimension and
watch how the data items appear and disappear according to their value
of the "time" dimension.
- Color Scale and Color Mapping: Six additional color scales (lightness, saturation, lightness
+ saturation, grey scale, magenta and heated object) are added into system for better
color presentation. The different dimension values are used for structure
driven color mapping.
- Performance: Some users have complained about the speed of XmdvTool 5.0. We have
removed several "bugs" that slow down the system so that XmdvTool 6.0
is much faster than the 5.0 version.
- Xmdv Meta File Support: A new file format for description of the types of dimensions and mapping
between the values and numeric representations has been added. This
allows to include nominal variables, document types and various user-defined
complex types to be included and displayed within Xmdv. This is still an
experimental feature and currently compiles on Windows/VC6 using the
USE_META definition. Use the website for more details on this feature and
the meta file format.
XmdvTool Light Java Version was released on May 25, 2004. It is a light-weight version of XmdvTool. It contains the four major multi-dimensional displays of XmdvTool: parallel coordinates, star
glyphs, scatterplots, and dimensional stacking. It also supports the basic brushing: users can manipulate a brush to highlight a subset of data items.
The new beginning: 2006 - current date
The new directions we are looking at are (1.) Quality Space Visualization, (2.) Managing Discoveries in Visual Analytics, (3.) Interactive Stream Views: Visual Analysis of Streaming Data, and (4.) Model-Driven Visual Analytics on Streams.
XmdvTool 7.0 version was released on October 26, 2006. It improves upon XmdvTool 6.0 in the following aspects:
- Visualization using pixel-oriented techniques, including linked
brushing between all visualizations, powerful data reordering
capabilities, and dimension placement based on multidimensional
- Enhanced handling of nominal data, including using correspondence analysis to do data-driven conversion of nominal
to ordinal values.
- Automated visual clutter measurement and clutter-based dimension
- Interactive control of dimension binning for dimensional
- Support for HDF4 and HDF5 data formats, as well as Oracle databases, Excel
spreadsheets, and XmdvTool's native .okc format.
XmdvTool 8.0 version was released on October 20, 2010. Starting from XmdvTool 8.0, we use SourceForge to manage all releases. Please go to XmdvTool sourceforge link
to download XmdvTool 8.0 Windows and Linux/Unix versions. The salient features of XmdvTool
8.0 are as follows:
- New software architecture: The new system is based on the information
visualization reference model (or visualization pipeline) developed by Ed
Chi. For more details on our extensions to this pipeline, please see our
paper in VDA 2010.
- New development environment: We have ported XmdvTool to Eclipse using Qt
for the UI to enhance portability.
- Multiple views: User can open multiple datasets at once, and observe each
dataset in multiple sub windows with different visualizations. These
windows can be tiled and/or cascaded.
- Color strategy: With a new color strategy dialog, users can assign colors
to datapoints based on data values or different orderings. We support
sequential, diverging, and qualitative color maps based on Cynthia Brewer's
- CSV file support: We enable users to open comma-separated values
(CSV) files directly in XmdvTool, in addition to the XmdvTool native file
XmdvTool Mac Version was released November 2013.
please find the binaries at XmdvTool Mac Version link.
XmdvTool 9.0 version was released October 31, 2015 ( XmdvTool github home to download XmdvTool 9.0).
This release includes a rich diversity of capabilities, including multi-model data exploration, mode comparative analytics, visual-driven time series analysis.
Starting from this release, XmdvTool 9.0, we use github to manage all releases.
The XmdvTool public-domain software package for the interactive visual exploration of multivariate data sets is available on all major platforms such as UNIX, LINUX, MAC and Windows.
XmdvTool is developed using Qt and Eclipse CDT. It supports five methods for displaying flat form data and hierarchically clustered data.
Please see our brief description at our XMDV website before you explore the software that can be found on gibhub.
Several next generation lightweight visual analytics tools, that combine machine learning with visual exploration technologies, have been designed,
developed and released under the auspices of the larger XmdvTool project, supported by NSF.
You can find a description of these techniques at XMDV download page and the source code at gibhub. Enjoy!
Over the years the XmdvTool project has been supported by NSF under grants IIS-9732897, IRIS 97-29878, IIS-0119276, IIS-0414380, IIS-0812027, and CCF-0811510.
The latest awards on Managing Discoveries in Visual Analytics (IIS-0812027),
Interactive Stream Views: Visual Analysis of Streaming Data can be found (CCF-0811510),
and III:CGV:Small:Model-Driven Visual Analytics on Streams (IIS-1117139).
An equipment grant for big data analytics has also been awarded in part to support this XMDV effort entitled Compute Infrastructure for Large-Scale Data Analytics (NSF CNS: 1305258).