HiDE: Hierarchical Data Explorer
HiDE is software for visually exploring categorical data using hierarchical layouts. Different orders, sizes, colours and layouts help reveal or emphasise different aspects of the data.
HiDE lets you interactively create novel hierarchical displays that share many of the characteristics of well-known and established statistical graphics such as small multiples, spine plots, cartograms, scatter plots, mosaic and treemaps.
This work was produced as part of the vizTweets project, a Virtual Research Environment Rapid Innovation (VRERI) Programme funded by JISC. Although this project is complete, we continue to work on this.
The software is a cross-platform application that requires Java 1.5 (or above) to run.
- All platforms: hide-v2.1.7.zip (v2.1.7, released Jan 2012)
To run the downloaded version:
- Windows: double-click on hide.bat
- Mac/UNIX: run hide.sh
go to the command line (Terminal), use cd to change to hide's directory, then type sh hide.sh.
Please report any bugs or feature request on the open issue list or by email to gicentre [at] soi.city.ac.uk.
The HiDE download comes with some example datasets. See below for details and information about how to get your own data into HiDE.
HiDE lets you build graphical views of categorical data where categories can be sized, ordered and coloured by various summary statistics measures, and tweet views that are interesting. Default (natural) order is either alphanumerical or some other order as defined in the data file. Default categorical colour uses perceptually evenly-spaced colour, where categorical values are consistently coloured. To use colours from shallower levels in the hierarchy, turning off colour at the deepest levels. Spatial ordering using our spatial treemaps can be achieved by using
x for order1,
y for order2 and the
Please watch our video about how HiDE works. We hope you find the software is fairly self-explanatory. Pressing 'h' at any time will give you a help screen for the following:
- Load a new dataset (press 'd')*
- Add or remove data variables from the graphic (click '+' and '-' near the top left of the screen)
- Show/hide the user interface (press 'g')
- Capture/restore a state using the clipboard (CTRL-c and CTRL-v). This can also be used to restore states that you or other people have posted.
- Restore a state from a QR code (press 'c': if the code cannot be read, nothing will happen)*
- Save a graphic to your local hard disk (press 'e')*
- Tweet a graphic (press ':' - you'll be prompted to log into your twitter account)
* Some of this functionality is missing from the applet version.
Note that when you set up your twitter account through HiDE, we do neither receive nor retain your login details. If you opt to set your account as a default (by pressing '~' when prompted), the details will be stored on your computer locally in a file called twitter.ini. Delete file this to reset.
Please report bugs/suggestions to the the vizTweets Google Code page.
Your own data
HiDE expects two files for each dataset, each with the same name but different extensions:
- A tab-delimited file (*.tab) containing the data
- An XML file (*.xml) describing the data file and setting up defaults.
HiDE only lets you open files, if both .tab and .xml files exist in the directory.
HiDE can be used with your own data - see the HiDE input data file documentation.
Version history (in reverse chronological order)
v2.1.7 (released January 2012)
- Press space to skip length frame rendering for morphing complex graphics
- Save all saved states to a .states file (can be restored in the same way as .state files)
- States can have names, but these can currently only be edited in the (plaintext) .states file. Edit this to change names and reorder saved states - should be fairly self-explanatory.
- ESC no longer exits
- New appearance type called "plot range level" which affects levels with absolute positioning. It controls whether ONE min/max x/y is used for positioning elements in a level (when the value is 1 (default)) or whether a SEPARATE min/max x/y is used for each branch at the specific level. If the same number as the level, a different min/max x/y is used for each immediate parent branch.
- *May* have fixed bug that caused app to hang on a data load
- Fixed bugs that caused crashes when new states load where existing hierarchy different
- fixed bug where it crashed if you clicked when no dataset loaded (same as in 2.1.4)
- changed keys to load/save states - now 'r' to restore a state from file, 'a' to only save appearance, 's' to save HiVE and appearance.
- history no longer automatically saved
- change arrows keys and numbers 1-9 to cycle through saved states
- improvements to save state gui buttons
- fixed bug with the sizing of rectangles in CA layout
- Can save states (appear at bottom of screen)
- Move backwards and forwards through states
- Better node labelling
- Autosize text removed
- Fixed validation error on data load, where invalid variable names were not identified as such
- fixed colour scaling bug where max positive value rather than absolute value for diverging colour schemes
- fixed bug where gap at top was not kept when new dataset loaded
- fixed bug where it crashed if you clicked when no dataset loaded
- *may* have fixed a memory leak
- threaded drawing with progress bar
- better GUI with dropdown menu for quicker change of attributes
- can change size of elements for 2dfill layout
- replay last morph (at any speed)
- Replaced the now defunct ur.ly url shortening service with bit.ly
- padding now works for leaves
- GUI now autohides itself
- Labels that start with # are treated as dummy nodes
- added option to flip colour schemes
- fixed bug where underscores had to be used as spaces in xml file. Now, just use spaces as normal
- Option to manually edit .state files, and add HIVE\t[hivestatement] as the first line after the comments.
v2.1.0 (March 2011)
- Supports the HiVE "CA" layout, producing 2D plots
- Hive's "oSwap" operator is now supported between adjacent hierarchical levels (click on diamond-shape between the hierarchical levels to swap)
- Variables containing numerical data can be set to apply to a specific hierarchical level (default is as before - applied to individual records).
- Animated progress graphic on data load
- Units can be specific for inclusion in the tooltip
- Better handing of number formatting in the tooltip
- Off-screen buffers are used to speed-up the app
- Image export (with 'e')
- Other screen furniture is not exported through tweets and image export
- added normalisedSum and normalisedAvg stats
- applet version
v2.0.3 (Jan 2011)
- Now deals with the LONG data type
- More efficient on-the-fly data summarisation
v2.0.2 (Dec 2010)
- new appearance option: outline widths around rectangles
- change from 'only fade' to turn on/off transitions and keystroke to 't'
- tooltip always on screen
- add dataset name in title
- show labels off by default
- added two new datasets: eu_energy_consump.readme and eu_renewable_produced
- turned off colour transparency (was originally applied to all colours)
- fix paste states bug, where hierarchy isn't trimmed
- added appearance options (show labels, label size, autosize labels, label opacity, allow vertical labels, padding, include nulls)
v2.0.0, April 2010
v1, Oct 2009
Fixed to one dataset (US Election) designed to support a tutorial about the role of order, size, colour and layout in data visualisation design. A copy of the tutorial is at http://www.gicentre.org/infovis/.
Slingsby, A., Dykes, J. and Wood, J. 2009. Configuring Hierarchical Layouts to Address Research Questions. IEEE Transactions on Visualization and Computer Graphics 15 (6), Nov-Dec 2009, pp977-984 [pdf | video] Honorable mention
Slingsby, A., Dykes, J. and Wood, J. 2010. Rectangular Hierarchical Cartograms for Socio-Economic Data, Journal of Maps, v2010, 330-345. DOI: 10.4113/jom.2010.1090 [link].
Slingsby, A., Dykes, J., Wood, J. and Crooks, A. 2009. The Role of Layout and Order in Treemaps for Showing Spatial and Temporal Variation in House Prices. Abstract for the GeoViz Hamburg Workshop, Hamburg, Germany. [demo | pdf]