Difference between revisions of "Tools:Visualization"

From ForensicsWiki
Jump to: navigation, search
m (Visualization Tools moved to Tools:Visualization: Category Adoption)
m (Research Groups)
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
Although not strictly for forensic purposes, '''visualization tools''' such as the ones discussed here can be very useful for visualizing large data sets. As forensic practitioners need to process more and more data, it is likely that some of the techniques implemented by these tools will need to be adopted.
 
Although not strictly for forensic purposes, '''visualization tools''' such as the ones discussed here can be very useful for visualizing large data sets. As forensic practitioners need to process more and more data, it is likely that some of the techniques implemented by these tools will need to be adopted.
 +
 +
==Programming Languages and Developer Toolkits==
 +
If you are building forensic tools, you probably want to start with one of these:
 +
; Java and Swing
 +
: Advantage: Portable and lots of good documentation out there.
 +
: Disadvantage: Programs are a bit verbose, and only offers about 1/2 the performance of C
 +
 +
; Python with tkinter
 +
: Advantage: Portable
 +
: Disadvantage: Python is one of the slowest modern languages around.
 +
 +
; Python with wxWidgets
 +
: Advantage: Portable and a better development environment than tkiner
 +
: Disadvantage: wxWidgets is not installed by default, so you'll need to get it installed. Not as well documented as Tkinter
 +
 +
; processing.org
 +
: Advantage: Programming language specifically developed for visualization; compiles to java byte code
 +
: Disadvantage: Very oddball
 +
 +
; JavaFX - Java's version of Flash
 +
 +
; Flash
 +
 +
  
 
== Open Source ==
 
== Open Source ==
Line 17: Line 41:
 
* [http://zvtm.sourceforge.net/index.html Zoomable Visual Transformation Machine] - Java. Originally started at Xerox Research Europe.
 
* [http://zvtm.sourceforge.net/index.html Zoomable Visual Transformation Machine] - Java. Originally started at Xerox Research Europe.
 
* [http://processing.org/ Processing.org] - A new language for doing graphics and visualization.
 
* [http://processing.org/ Processing.org] - A new language for doing graphics and visualization.
 +
 +
====Tree Maps====
 +
[http://www.cs.umd.edu/hcil/treemap-history/index.shtml Treemaps] are a visualization technique developed at the University of Maryland for visualizing large amounts of multi-dimensional data. There is a GPLed implementation of treemaps written in C. You can find a copy of in it:
 +
* [http://www.derlien.com/ Disk Inventory X]
 +
* [http://kdirstat.sourceforge.net/ KDirStat]
  
 
===Graph Drawing Applications===
 
===Graph Drawing Applications===
Line 22: Line 51:
 
* [http://graphexploration.cond.org/ Guess: The Graph Exploration System] - Originally developed at HP, this is a large Jython/Java-based system that you can use for building your own applications. Distributed under GPL.
 
* [http://graphexploration.cond.org/ Guess: The Graph Exploration System] - Originally developed at HP, this is a large Jython/Java-based system that you can use for building your own applications. Distributed under GPL.
 
* [http://sourceforge.net/projects/ivc/ InfoVis Cyberinfrastructure] - Another graph drawing system written in Java.
 
* [http://sourceforge.net/projects/ivc/ InfoVis Cyberinfrastructure] - Another graph drawing system written in Java.
* [http://bioinformatics.icmb.utexas.edu/lgl/ Large Graph Layout (LGL)] - A bioinformatics system from University of Texas. They really mean Large.
 
* [http://www.opendx.org/ OpenDX] - Based on [[IBM]]'s Visualization Data Explorer, runs on [[Unix]]/X11/Motif.
 
 
* [http://jung.sourceforge.net/ Java Universal Network/Graph Framework (JUNG)] - Graphing, [[data mining]], [[social network]] analysis, and other stuff.
 
* [http://jung.sourceforge.net/ Java Universal Network/Graph Framework (JUNG)] - Graphing, [[data mining]], [[social network]] analysis, and other stuff.
 +
* [http://www.andrew.cmu.edu/user/krack/krackplot.shtml Krackplot] - "KrackPlot is a program for network visualization designed for social network analysts."
 +
* [http://bioinformatics.icmb.utexas.edu/lgl/ Large Graph Layout (LGL)] - A bioinformatics system from University of Texas. They really mean Large.
 +
* [http://www.sfu.ca/~richards/Multinet/Pages/multinet.htm MultiNet] - A data analysis package for drawing conventional data and graph data.
 
* [http://www.analytictech.com/netdraw.htm NetDraw] - "a free program written by Steve Borgatti for visualizing both 1-mode and 2-mode social network data."
 
* [http://www.analytictech.com/netdraw.htm NetDraw] - "a free program written by Steve Borgatti for visualizing both 1-mode and 2-mode social network data."
 
* [http://web.mit.edu/bshi/Public/nv2d/ NetVis 2D] - Another graph visualization and layout tool written in Java.
 
* [http://web.mit.edu/bshi/Public/nv2d/ NetVis 2D] - Another graph visualization and layout tool written in Java.
 +
* [http://www.opendx.org/ OpenDX] - Based on [[IBM]]'s Visualization Data Explorer, runs on [[Unix]]/X11/Motif.
 
* [http://vlado.fmf.uni-lj.si/pub/networks/pajek/ Pajek] - Windows program for drawing large networks.
 
* [http://vlado.fmf.uni-lj.si/pub/networks/pajek/ Pajek] - Windows program for drawing large networks.
 
* [http://sourceforge.net/projects/sonia/ Social Network Image Animator (SoNIA)] - Originally developed at Stanford. Written in Java. Makes movies.  
 
* [http://sourceforge.net/projects/sonia/ Social Network Image Animator (SoNIA)] - Originally developed at Stanford. Written in Java. Makes movies.  
 
* [http://www.informatik.uni-bremen.de/uDrawGraph/en/uDrawGraph/uDrawGraph.html uDrawGraph]
 
* [http://www.informatik.uni-bremen.de/uDrawGraph/en/uDrawGraph/uDrawGraph.html uDrawGraph]
* [http://www.wilmascope.org/ WilmaScope] - Real-time animations of dynamic graph structures. Written in Java. Sophisticated force model with strings and attraction.
+
* [http://wilma.sourceforge.net/ WilmaScope] - Real-time animations of dynamic graph structures. Written in Java. Sophisticated force model with strings and attraction.
 
* [http://www.caida.org/tools/visualization/walrus/ Walrus] - A 3-d graph network exploration tool. Employs 3D hyperbolic displays and layout based on a user-supplied spanning tree.
 
* [http://www.caida.org/tools/visualization/walrus/ Walrus] - A 3-d graph network exploration tool. Employs 3D hyperbolic displays and layout based on a user-supplied spanning tree.
  
Line 48: Line 79:
  
 
= Other Resources =
 
= Other Resources =
 
+
==Journals and Conferences==
; [http://www.palgrave-journals.com/ivs/index.html Information Visualization Journal]
+
* [http://www.palgrave-journals.com/ivs/index.html Information Visualization Journal]
 
+
* [http://rw4.cs.uni-sb.de/~diehl/softvis/seminar/index.php?goto=seminar ACM Symposium on Software Visualization]
; [http://www-static.cc.gatech.edu/gvu/ii/resources/infovis.html GVU's Information Visualization Resources link farm]
+
==Link Farms==
 
+
* [http://www-static.cc.gatech.edu/gvu/ii/resources/infovis.html GVU's Information Visualization Resources link farm]
; [http://www.msi.umn.edu/user_support/scivis/scivis-list.html Scientific Visualization at the Supercomputing Institute]
+
* [http://directory.google.com/Top/Science/Math/Combinatorics/Software/Graph_Drawing/ Google Directory of Graph Drawing Software]
 
+
* [http://directory.fsf.org/science/visual/ GNU Free Software directory of scientific visualization software]
; [http://directory.google.com/Top/Science/Math/Combinatorics/Software/Graph_Drawing/ Google Directory of Graph Drawing Software]
+
* [http://www.manageability.org/blog/stuff/open-source-graph-network-visualization-in-java/view Open Source Graph Network Visualization in Java]
 
+
* [http://www.insna.org/INSNA/soft_inf.html INSNA's web page of Computer Programs for Social Network Analysis]
; [http://rw4.cs.uni-sb.de/~diehl/softvis/seminar/index.php?goto=seminar ACM Symposium on Software Visualization]
+
==Research Groups==
: May give you some ideas.
+
* [http://www.msi.umn.edu/user_support/scivis/scivis-list.html Scientific Visualization at the Supercomputing Institute]
 
+
* [http://www.cs.brown.edu/people/rt/gd.html Roberto Tamassia's resources on Graph Drawing]
; [http://directory.fsf.org/science/visual/ GNU Free Software directory of scientific visualization software]
+
===Berkeley===
 
+
* [http://bailando.sims.berkeley.edu/infovis.html Bailando Visualization]
; [http://www.cs.brown.edu/people/rt/gd.html Roberto Tamassia's resources on Graph Drawing]
+
* [http://vis.berkeley.edu/ Berkeley Visualization Lab]
 
+
===Stanford===
; [http://www.manageability.org/blog/stuff/open-source-graph-network-visualization-in-java/view Open Source Graph Network Visualization in Java]
+
* [http://window.stanford.edu/projects/rivet/ Rivet Project] (Visualization complex systems)

Revision as of 12:39, 31 May 2009

Although not strictly for forensic purposes, visualization tools such as the ones discussed here can be very useful for visualizing large data sets. As forensic practitioners need to process more and more data, it is likely that some of the techniques implemented by these tools will need to be adopted.

Programming Languages and Developer Toolkits

If you are building forensic tools, you probably want to start with one of these:

Java and Swing
Advantage: Portable and lots of good documentation out there.
Disadvantage: Programs are a bit verbose, and only offers about 1/2 the performance of C
Python with tkinter
Advantage: Portable
Disadvantage: Python is one of the slowest modern languages around.
Python with wxWidgets
Advantage: Portable and a better development environment than tkiner
Disadvantage: wxWidgets is not installed by default, so you'll need to get it installed. Not as well documented as Tkinter
processing.org
Advantage: Programming language specifically developed for visualization; compiles to java byte code
Disadvantage: Very oddball
JavaFX - Java's version of Flash
Flash


Open Source

Visualization Toolkits and Libraries

Tree Maps

Treemaps are a visualization technique developed at the University of Maryland for visualizing large amounts of multi-dimensional data. There is a GPLed implementation of treemaps written in C. You can find a copy of in it:

Graph Drawing Applications

Geographical Drawing Programs

Commercial Tools

  • aiSee Graph Layout Software - Supports 15 layout algorithms, recursive graph nesting, and easy printing. Runs on Windows, Linux, Solaris, NetBSD, and MacOS. 30-day trial and free registered versions available. Academic pricing available.
  • Geomantics - Geographical, Visualization and Graphics software. Runs on Windows.
  • Graphis 2D and 3D graphing software - Runs on Windows. Free 30-day evaluation copy available.
  • OpenViz and PowerViz - Both from Advanced Visual Systems, super high-end visualization toolkits. $$$$
  • Tom Sawyer Software Analysis, Visualizaiton, and Layout programs. - Heavy support for drawing graphs. Beautiful gallery. ActiveX, Java, C++ and .NET editions.
  • NetMiner - "One of the most comprehensive and usable software tools for Social Network Analysis in the world." Runs on Winodws, with a Linux version under development. $35 for "Express" student version, $250 for "Professional" student version, $950 for "Normal" "Professional" version.
  • UCINET - A comprehensive package for the analysis of social network data as well as other 1-mode and 2-mode data.

Other Resources

Journals and Conferences

Link Farms

Research Groups

Berkeley

Stanford