<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://infovis-wiki.net/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mahfujalubna</id>
	<title>InfoVis:Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://infovis-wiki.net/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mahfujalubna"/>
	<link rel="alternate" type="text/html" href="https://infovis-wiki.net/wiki/Special:Contributions/Mahfujalubna"/>
	<updated>2026-04-27T05:43:12Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://infovis-wiki.net/w/index.php?title=Prefuse&amp;diff=56680</id>
		<title>Prefuse</title>
		<link rel="alternate" type="text/html" href="https://infovis-wiki.net/w/index.php?title=Prefuse&amp;diff=56680"/>
		<updated>2011-10-16T03:51:06Z</updated>

		<summary type="html">&lt;p&gt;Mahfujalubna: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Summary =&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Author&#039;&#039;&#039;: Jeffrey Heer / UC Berkeley&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Project Webpage&#039;&#039;&#039;: http://prefuse.org&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Current Version&#039;&#039;&#039;: beta, 21 October 2007&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Requirements&#039;&#039;&#039;: Java 1.4&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Overview:&#039;&#039;&#039; using Java2D graphics library; pipeline architecture; animation and rendering support&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Base data structures&#039;&#039;&#039;: Table, Graph, Tree&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Included visualization techniques (&#039;&#039;[http://prefuse.org/gallery/ prefuse gallery]&#039;&#039;):&#039;&#039;&#039; [http://prefuse.org/gallery/fisheyemenu/ Fisheye Menu], [http://prefuse.org/gallery/radialgraphview/ Radial Graph], [http://prefuse.org/gallery/treemap/ Treemap], [http://prefuse.org/gallery/congress/ Scatterplot], [http://prefuse.org/gallery/zipdecode/ zipdecode], [http://prefuse.org/gallery/treeview/ DOITree], [http://prefuse.org/gallery/graphview/ Graph View], [http://prefuse.org/gallery/datamountain/ Data Mountain]&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Supported File Formats&#039;&#039;&#039;: GraphML (XML), TreeML (XML), Tab-delimited Text, CSV&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;prefuse&#039;&#039;&#039; is an interactive graphical open source toolkit written in Java. It is thought to support the development of sophisticated, highly interactive, and flexible [[Information Visualization]]s. The architecture of &#039;&#039;&#039;prefuse&#039;&#039;&#039; considers the [[Visualization Pipeline]], a recommendation on how to implement a visualization. To provide flexibility, a [[polylithic design]] was chosen which enables developers to implement only needed functionality and customize these to meet the own requirements. But, in contrast to a [[monolithic design]], this design needs more time to conceive and influences the architecture of the own application heavily (which is not a disadvantage as &#039;&#039;&#039;prefuse&#039;&#039;&#039; is very elaborate). &lt;br /&gt;
&lt;br /&gt;
Typically, &#039;&#039;&#039;prefuse&#039;&#039;&#039; is designed to visualize interrelated information so it can be stored in a graph or tree structure, but, also not related data can be used which is stored within a data table. Even if the structure is hierarchical, the resulting tree or graph structure must not be considered in the proper graphical representation as layout algorithms are not restricted in any way. The painting of visual items is done by using a renderer which has access to the respective item itself and the Graphics2D context of the view. This approach enables to use the whole range of available painting methods of Java, therefore, all painting issues are completely independent of the toolkit itself.&lt;br /&gt;
&lt;br /&gt;
Besides providing a large set of predefined elements to visualize data, most attention was set toward usability of the visualization. This is obtained by applying several interaction techniques like tooltips or dragging visual elements. But also more sophisticated techniques like [[zoom]]ing, [[pan]]ning, or [[semantic zoom]]ing are supported or partially even provided by the toolkit itself. Further, &#039;&#039;&#039;prefuse&#039;&#039;&#039; clearly distinguishes between absolute and view coordinates. This separation helps users to place all visual elements in a logical way without consideration of later applied visualization techniques that changes the entire view.  &lt;br /&gt;
&lt;br /&gt;
=== Pros ===&lt;br /&gt;
&lt;br /&gt;
* flexible&lt;br /&gt;
* versatile pipeline approach&lt;br /&gt;
* clear and well thought architecture&lt;br /&gt;
* many layout and distortion algorithms included&lt;br /&gt;
* algorithms for force-based physics simulation included&lt;br /&gt;
* custom animations (smooth transitions)&lt;br /&gt;
* color maps&lt;br /&gt;
* query language to navigate within abstract data&lt;br /&gt;
* demos and examples included&lt;br /&gt;
* bounding management&lt;br /&gt;
* open source&lt;br /&gt;
* documentation of code and general guidance available&lt;br /&gt;
* active developer community &lt;br /&gt;
* &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[http://www.diamondlinks.net/&amp;lt;span style=&amp;quot;color:black;font-weight:normal; text-decoration:none!important; background:none!important; text-decoration:none;&amp;quot;&amp;gt;link building&amp;lt;/span&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
=== Cons ===&lt;br /&gt;
&lt;br /&gt;
* [[polylithic design]] takes up more time to conceive and see first results&lt;br /&gt;
* special requirements of a visualization enforce a lot of adapting work&lt;br /&gt;
&lt;br /&gt;
=General Approach=&lt;br /&gt;
&lt;br /&gt;
Going along with the step-wise recommendation of the [[Visualization Pipeline]], a &#039;&#039;&#039;prefuse&#039;&#039;&#039; application consists of different states of data:&lt;br /&gt;
&lt;br /&gt;
[[Image:prefuse_visualization_pipeline.gif|600px]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;prefuse&#039;&#039;&#039; uses a centralized object called &#039;&#039;Visualization&#039;&#039; (former &#039;&#039;ItemRegistry&#039;&#039;) which maintains and manages the whole visualization. This object has to fulfil several tasks. It stores the abstract data as well as visual analogous of these in two different tables. All transformation routines like filtering or rendering are managed and executed by the &#039;&#039;Visualization&#039;&#039; too. Further, it refers to at least one &#039;&#039;Display&#039;&#039;, a graphical component which can represent visual elements of the &#039;&#039;Visualization&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
Transformation routines are defined as &#039;&#039;Actions&#039;&#039; which are combined in &#039;&#039;ActionLists&#039;&#039;. An &#039;&#039;ActionList&#039;&#039; is an executable container which is started manually by a user or automatically by the &#039;&#039;Visualization&#039;&#039;. Once such a list is started, all defined &#039;&#039;Actions&#039;&#039; are executed in the given sequence. Typically, the last called &#039;&#039;Action&#039;&#039; is the &#039;&#039;RepaintAction&#039;&#039; which forces all belonging &#039;&#039;Displays&#039;&#039; of the &#039;&#039;Visualization&#039;&#039; to repaint themselves. &lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;Display&#039;&#039; is the view of &#039;&#039;&#039;prefuse&#039;&#039;&#039;. It can be embedded in each Java Swing application. The main task of a &#039;&#039;Display&#039;&#039; is the painting of visual structures which are defined in the respective &#039;&#039;Visualization&#039;&#039;. Whenever the &#039;&#039;Display&#039;&#039; performs a repaint, it requests all visual items and checks all bounds of them (bounding management). If an item is within the own area the respective rendering mechanism is called.  &lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;Display&#039;&#039; also provides navigation techniques like [[zoom]]ing or [[pan]]ning which change the view. The view itself refers to a separate coordinate system. View coordinates are described through an affine transformation matrix. Any navigation technique applied to the view only concerns the view coordinate system. The most important functionalities to work with this coordinate system are already predefined. Typically, users just have to apply whished techniques without considering technical details like the view coordinate system. &lt;br /&gt;
&lt;br /&gt;
Furthermore, a &#039;&#039;Display&#039;&#039; also maintains a set of &#039;&#039;ControlListener&#039;&#039; which are used to process user interactions (mouse or keyboard events). Whenever such an event occurs the respective listener is called. A listener already differs on where the event happened (e.g., blank area or a certain item). Further, a &#039;&#039;ControlListener&#039;&#039; may also start an &#039;&#039;ActionList&#039;&#039; again.&lt;br /&gt;
&lt;br /&gt;
==Source Data==&lt;br /&gt;
&lt;br /&gt;
Raw data is the base of the application. Typically, the source of raw data is a file, but also other sources like a database or web content are thinkable. However, &#039;&#039;&#039;prefuse&#039;&#039;&#039; provides several file readers for different formats (CSV, Tab-Delimitated, etc.) that can be transformed into a data table. Further, some readers also support the reading of SQL-Databases. If another source is needed, a reader can be written manually.&lt;br /&gt;
&lt;br /&gt;
Once the raw data is read, it is transformed into abstract data and stored within a data table of the &#039;&#039;Visualization&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Data Table==&lt;br /&gt;
&lt;br /&gt;
The data table which is used to store abstract data works with data types and a definition schema which maps relations between data-type and table. That means, each row contains a data record, and each column contains values for a named data field with a specific data-type. Each record of the table is referred as a &#039;&#039;Tuple&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
Furthermore, instead of the table, also a graph or tree may be used to store interrelated data. Instead of &#039;&#039;Tuples&#039;&#039;, records are referred as &#039;&#039;Nodes&#039;&#039; which are connected to others with &#039;&#039;Edges&#039;&#039;. Additionally, a tree has one defined root &#039;&#039;Node&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Abstract data does not contain any visual information like assignment attributes or color settings. Instead, own visual analogous are created. Visual attributes of them are extracted out of the abstract data following a defined logic.&lt;br /&gt;
&lt;br /&gt;
==Visual Abstraction==&lt;br /&gt;
&lt;br /&gt;
Visual structures are created when filtering the data container which contains the abstract data. In case of a visualization that displays all items from the beginning on, the filtering routine must only executed once at initializing time. If the visual content changes dynamically, the filtering is executed on certain user interactions by calling a defined filtering &#039;&#039;ActionList&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
A visual structure is referred as &#039;&#039;VisualItem&#039;&#039; which may be distinguished as &#039;&#039;VisualNode&#039;&#039;, &#039;&#039;VisualEdge&#039;&#039;, or an aggregated item which consists of several other items. However, as a &#039;&#039;VisualItem&#039;&#039; is extended of the respective abstract entity, it has full access to all abstract information too. &lt;br /&gt;
&lt;br /&gt;
The filtering routine which transforms the abstract data to visual analogues typically consists of following &#039;&#039;Actions&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Filter&#039;&#039;&#039;: This &#039;&#039;Action&#039;&#039; is responsible to transform the abstract data of the backing table to visual analogues. If no special conditions are defined, the filter creates for each &#039;&#039;Tuple&#039;&#039; a visual instance and stores them in a second table. Additionally, a filter also performs a garbage collection and may set visibility attributes of the created items. &lt;br /&gt;
* &#039;&#039;&#039;Layout&#039;&#039;&#039;: A layout takes care about placing the &#039;&#039;VisualItems&#039;&#039;. Several common algorithms for graphs or trees are already predefined (e.g., &#039;&#039;ForceDirectedLayout&#039;&#039; or &#039;&#039;RadialTreeLayout&#039;&#039;). &lt;br /&gt;
* &#039;&#039;&#039;Assignment&#039;&#039;&#039;: Besides layouting, also other assignments may be performed during the filtering process. Such assignments directly changes visual attributes of &#039;&#039;VisualItems&#039;&#039; like colors, sizes, fonts, etc.&lt;br /&gt;
&lt;br /&gt;
A visual structure may also contain a paint routine, but, as all painting jobs are initialized or performed by separated renderers, these issues may also be executed by the renderer itself or any other object.&lt;br /&gt;
&lt;br /&gt;
==View==&lt;br /&gt;
&lt;br /&gt;
Typically, the rendered visual structure is not stored, instead, they are re-rendered whenever needed.&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[http://www.gallbladderdetox.com/gall-bladder-symptoms/ &amp;lt;span style=&amp;quot;color:black;font-weight:normal; text-decoration:none!important; background:none!important; text-decoration:none;&amp;quot;&amp;gt;gall bladder symptoms&amp;lt;/span&amp;gt;]  However, in case of very complex but constant visual representations it makes sense to hold items in an offscreen image. &lt;br /&gt;
&lt;br /&gt;
Each &#039;&#039;VisualItem&#039;&#039; has got one or more associated &#039;&#039;Renderers&#039;&#039; which are maintained by a factory of the &#039;&#039;Visualization&#039;&#039;. A &#039;&#039;Renderer&#039;&#039; has to perform two tasks:&lt;br /&gt;
&lt;br /&gt;
* Providing a bounding box of the item. This box is used to determine if the item must actually be painted or if it would not be visible anyway. &lt;br /&gt;
* Providing the painting routine of the item. Paintings may be executed by the &#039;&#039;Renderer&#039;&#039; itself or delegated to other objects which are accessible of the &#039;&#039;Renderer&#039;&#039;. The painting routines are not restricted in any way, but the proper representation should not exceed the bounding box of the item. &lt;br /&gt;
&lt;br /&gt;
Rendering is always performed on a repaint of the &#039;&#039;Display&#039;&#039;. A repaint can be requested by the &#039;&#039;Visualization&#039;&#039;, on user interaction, and on events like resizing the component, getting the focus, or changing the coordinate system of the view. However, as repaints may occur very often, developers have to ascertain that rendering jobs are performed fast, otherwise, the performance of the whole visualization would suffer.&lt;br /&gt;
&lt;br /&gt;
{{Quotation|The central class is &#039;&#039;&#039;Visualization&#039;&#039;&#039;, which has associated &#039;&#039;&#039;VisualTable&#039;&#039;&#039;, &#039;&#039;&#039;Action&#039;&#039;&#039;, &#039;&#039;&#039;Renderer&#039;&#039;&#039;, and &#039;&#039;&#039;Display&#039;&#039;&#039; objects. &#039;&#039;&#039;VisualTable&#039;&#039;&#039; objects represent the visual structures to be rendered. They are backed up by data tables (&#039;&#039;&#039;Table&#039;&#039;&#039; objects) using the cascaded table pattern describes in [8]. &#039;&#039;&#039;VisualTable&#039;&#039;&#039; objects extend the data tables by additional columns for visual properties such as color, shape, size, position, etc. Each row of a &#039;&#039;&#039;VisualTable&#039;&#039;&#039; represents one &#039;&#039;&#039;VisualItem&#039;&#039;&#039; object. A &#039;&#039;&#039;VisualItem&#039;&#039;&#039; is rendered to one or more &#039;&#039;&#039;Display&#039;&#039;&#039; instances using an associated &#039;&#039;&#039;Renderer&#039;&#039;&#039;. &#039;&#039;&#039;Actions&#039;&#039;&#039; are used for data transformations (e.g. for filtering), visual mappings (e.g. for defining the color, size or shape), and for view transformations (e.g. zooming or animation). An important concept is the concept of visual groups. Groups are identifies for sets of &#039;&#039;&#039;VisualItems&#039;&#039;&#039;. &#039;&#039;&#039;Actions&#039;&#039;&#039; can be assigned for each such set. An example for an action is the layout of items. A &#039;&#039;&#039;Layout&#039;&#039;&#039; action computes the location of all items of a certain group in terms of (x,y)-coordinates. &#039;&#039;&#039;EncoderActions&#039;&#039;&#039; use a &#039;&#039;&#039;Predicate&#039;&#039;&#039; to restrict to certain items of a group, e.g. changing the foreground color only of items that are currently selected. Finally, &#039;&#039;&#039;Control&#039;&#039;&#039;objects handle user input, e.g. dragging of an item to a new location. &#039;&#039;&#039;Controls&#039;&#039;&#039; then usually invoke one or more Actions to perform the changes on the data.|[Giereth and Ertl, 2008]}}&lt;br /&gt;
&lt;br /&gt;
=Details=&lt;br /&gt;
&lt;br /&gt;
==Package Structure==&lt;br /&gt;
&lt;br /&gt;
Following picture shows the most important packages of &#039;&#039;&#039;prefuse&#039;&#039;&#039; regarding to the [[Visualization Pipeline]]:&lt;br /&gt;
&lt;br /&gt;
[[Image:prefuse_package_guide.gif|600px]]&lt;br /&gt;
&lt;br /&gt;
These packages also contain predefined components. Default &#039;&#039;Nodes&#039;&#039; and &#039;&#039;Edges&#039;&#039; provide standard functionality of abstract data, standard functionality is also available in visual analogous of them. A default filter transforms all defined abstract entities to visual ones. Further, also some special functionalities to fulfil common requirements are provided by own components: &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Renderers&#039;&#039;&#039;: &#039;&#039;EdgeRenderer&#039;&#039; to render edges between graph or tree nodes, a &#039;&#039;LableRenderer&#039;&#039; to render text items, and a &#039;&#039;PolygoneRenderer&#039;&#039; to render geometrical items. &lt;br /&gt;
* &#039;&#039;&#039;Layouts&#039;&#039;&#039;: &#039;&#039;RandomLayout&#039;&#039;, &#039;&#039;GridLayout&#039;&#039;, and some more to place non related data, &#039;&#039;ForceDirectedLayout&#039;&#039;, &#039;&#039;TreeLayout&#039;&#039;, &#039;&#039;RadialTreeLayout&#039;&#039; and others to layout trees and graphs.&lt;br /&gt;
* &#039;&#039;&#039;Controls&#039;&#039;&#039;: &#039;&#039;DragControl&#039;&#039;, &#039;&#039;ZoomControl&#039;&#039;, &#039;&#039;PanControl&#039;&#039;, &#039;&#039;ToolTipControl&#039;&#039; and several others to react on user interactions. &lt;br /&gt;
&lt;br /&gt;
In simple visualizations the predefined functionality will meet most requirements. If special requirements are needed the default functionality supports a step-wise developing as results can be communicated by predefined components until the own functionality is implemented.&lt;br /&gt;
&lt;br /&gt;
==Coordinates in prefuse==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;prefuse&#039;&#039;&#039; works with two different coordinate systems. Absolute coordinates are device-independent logical coordinates. All visual attributes like positions or sizes are defined in absolute coordinates. In contrast, view coordinates are device-depended (screen). Transformations between absolute and view coordinates are done automatically by Java painting routines. View coordinates are influenced by the system and device driver (e.g., the absolute point (0,0) is the topmost left point of the actual graphical component which may be on any position at the screen). Further, view coordinates may also be manipulated manually by using an affine transformation matrix which applies linear transformations on absolute coordinates before device-dependent routines convert them to screen coordinates. &lt;br /&gt;
&lt;br /&gt;
A &#039;&#039;&#039;prefuse&#039;&#039;&#039; &#039;&#039;Display&#039;&#039; provides the most important manipulating methods of this matrix. [[Zoom]]ing, [[pan]]ning, and rotation of the whole view are only done by changing the view coordinates. So, as absolute coordinates are never concerned of such transformations and translations, a user must never consider the actual view in layout, assignment, or painting routines. &lt;br /&gt;
&lt;br /&gt;
There are several different ways on how to apply such transformations, additionally, the &#039;&#039;Display&#039;&#039; also supports animated transformations.&lt;br /&gt;
&lt;br /&gt;
==User Interactions==&lt;br /&gt;
&lt;br /&gt;
Mouse or keyboard events are treated by &#039;&#039;ControlListener&#039;&#039;. Whenever an event occurs which is handled by a &#039;&#039;ControlListener&#039;&#039;, the &#039;&#039;Display&#039;&#039; delegates the event to the respective routine. A &#039;&#039;ControlListener&#039;&#039; disdinguishes automatically which visual element is concerned of the event (the view itself or a &#039;&#039;VisualItem&#039;&#039;). &lt;br /&gt;
&lt;br /&gt;
A &#039;&#039;ControlListener&#039;&#039; may just perform simple tasks like changing the mouse cursor or editing the label of an item. But, in more sophisticated applications, also tasks like loading new data or dragging items on the view may be handled. Therefore, a &#039;&#039;ControlListener&#039;&#039; may also start &#039;&#039;ActionLists&#039;&#039; to execute such tasks. Further, a &#039;&#039;ControlListener&#039;&#039; has also access to the &#039;&#039;Display&#039;&#039;. Thus, it is able to call methods like zooming or panning. Typically, each &#039;&#039;ControlListener&#039;&#039; forces a repaint when its job is done.  &lt;br /&gt;
&lt;br /&gt;
Most of standard functionality is already predefined in &#039;&#039;prefuse&#039;&#039; and the wanted listeners just have to be assigned to the &#039;&#039;Display&#039;&#039;. However, the &#039;&#039;Display&#039;&#039; can handle a countless of different listener. Hence, typically only a few listeners must be defined manually as they can be mixed with default ones.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;prefuse&#039;&#039;&#039; is a very powerful toolkit, providing a large set of components and methods a developer needs to build an [[Information Visualization]]. The [[polylithic design]] is not that easy to understand in the beginning of a development, but &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[http://www.kidney-stones-symptoms-cure.com/ &amp;lt;span style=&amp;quot;color:black;font-weight:normal; text-decoration:none!important; background:none!important; text-decoration:none;&amp;quot;&amp;gt;symptoms of kidney stones&amp;lt;/span&amp;gt;]  once conceived, a visualization is easy to realize even if really special demands have to be fulfilled. Furthermore, using Prefuse forces a clear and well designed architecture of own applications.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;prefuse&#039;&#039;&#039; was created with most attention paid to developers who will finally work with the toolkit. In an evaluation study this goal was approved too. In the meanwhile, there is also a not so small community using and upgrading the toolkit, which is an argument for its usability.&lt;br /&gt;
&lt;br /&gt;
= External links =&lt;br /&gt;
*[http://prefuse.org prefuse Homepage]&lt;br /&gt;
*[http://www.kidney-stones-symptoms-cure.com/ symptoms of kidney stones]&lt;br /&gt;
*[http://www.gallbladderdetox.com/gall-bladder-symptoms/ gall bladder symptoms]&lt;br /&gt;
*[http://www.kidney-stones-symptoms-cure.com/ kidney stones symptoms]&lt;br /&gt;
*[http://vw.indiana.edu/ivsi2004/jherr/index.html prefuse Position Paper]&lt;br /&gt;
*[http://sourceforge.net/forum/forum.php?forum_id=343013 prefuse Help Forum]&lt;br /&gt;
*[http://goosebumps4all.net/34all/bb/forumdisplay.php?fid=18 Unofficial Help Forum]&lt;br /&gt;
*[http://www.cs.mun.ca/~hoeber/teaching/cs4767/notes/04-prefuse/ Prefuse Tutorial] by Orland Hoeber&lt;br /&gt;
*[http://ike.donau-uni.ac.at/~rind/w/doku.php/java/prefuse-scatterplot prefuse Scatter Plot Tutorial] by Alexander Rind&lt;br /&gt;
*[http://prefuse.blogspot.com/ Useful prefuse documentation on blogspot]&lt;br /&gt;
&lt;br /&gt;
= Downloads =&lt;br /&gt;
*[[Media:Prefuse-tutorial-20061127-handout.pdf|prefuse Tutorial (pdf, 660kB)]] by [[Aigner, Wolfgang|Wolfgang Aigner]]&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
*[Giereth and Ertl, 2008] Giereth, M.; Ertl, T., [http://ieeexplore.ieee.org/iel5/4577907/4577908/04578006.pdf?isnumber=4577908∏=STD&amp;amp;arnumber=4578006&amp;amp;arnumber=4578006&amp;amp;arSt=569&amp;amp;ared=574&amp;amp;arAuthor=Giereth%2C+M.%3B+Ertl%2C+T. Design Patterns for Rapid Visualization Prototyping], Proc. of 12th International Conference on Information Visualisation 2008 (IV&#039;08), pp.569-574, 9-11 July 2008.&lt;br /&gt;
*[Heer, 2004] Jeffrey Heer. [http://jheer.org/publications/2004-Heer-prefuse-Masters.pdf prefuse: a software framework for interactive information visualization]. Masters of Science, Computer Science Division, University of California, Berkeley, 2004.&lt;br /&gt;
*[Heer, 2005] Jeffrey Heer, Stuart K. Card, and James A. Landay. [http://jheer.org/publications/2005-prefuse-CHI.pdf prefuse: a toolkit for interactive information visualization.] In CHI 2005, Human Factors in Computing Systems, 2005.&lt;br /&gt;
*[Heer, 2006a] Jeffrey Heer, prefuse API documentation. Retrieved at: July 06, 2006, http://prefuse.org&lt;br /&gt;
*[Heer, 2006b] Jeffrey Heer, prefuse manual. Retrieved at: July 06, 2006, http://prefuse.org&lt;br /&gt;
*[Sun Microsystems, 2001] Sun Microsystems, Programmer’s Guide to the Java 2DTM API - Enhanced Graphics and Imaging for Java. Retrieved at: April 20, 2006, http://java.sun.com/j2se/1.4/pdf/j2d-book.pdf&lt;br /&gt;
&lt;br /&gt;
[[Category:Toolkits]]&lt;/div&gt;</summary>
		<author><name>Mahfujalubna</name></author>
	</entry>
	<entry>
		<id>https://infovis-wiki.net/w/index.php?title=Information_Visualization&amp;diff=54269</id>
		<title>Information Visualization</title>
		<link rel="alternate" type="text/html" href="https://infovis-wiki.net/w/index.php?title=Information_Visualization&amp;diff=54269"/>
		<updated>2011-10-09T08:20:18Z</updated>

		<summary type="html">&lt;p&gt;Mahfujalubna: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Definition|&#039;&#039;&#039;Information visualization &#039;&#039;(InfoVis)&#039;&#039;&#039;&#039;&#039; produces (interactive) visual representations of [[abstract data]] to reinforce human cognition; thus enabling the viewer to gain knowledge about the internal structure of the data and causal relationships in it.}}&lt;br /&gt;
&lt;br /&gt;
{{Definition|&#039;&#039;&#039;Information visualization &#039;&#039;(InfoVis)&#039;&#039;&#039;&#039;&#039; is the communication of [[abstract data]] through the use of interactive visual interfaces. [Keim et al., 2006]}}&lt;br /&gt;
&lt;br /&gt;
== Definitions == &lt;br /&gt;
&lt;br /&gt;
{{Quotation|Compact graphical presentation and user interface for &lt;br /&gt;
*manipulating large numbers of items  &lt;br /&gt;
*possibly extracted from far larger datasets &lt;br /&gt;
Enables users to  make &lt;br /&gt;
*discoveries, &lt;br /&gt;
*decisions, or &lt;br /&gt;
*explanations &lt;br /&gt;
*[http://www.gather.com/viewArticle.action?articleId=281474979624859 boils]&lt;br /&gt;
*[http://www.allgallbladdersymptoms.org/ Gallbladder disease]&lt;br /&gt;
about &lt;br /&gt;
*patterns (trend, cluster, gap, outlier...), &lt;br /&gt;
*groups of items, or &lt;br /&gt;
*individual items.|[Plaisant, 2001]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|The use of computer-supported, interactive, visual representations of [[abstract data]] to amplify [[cognition]].|[Card et al., 1999]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|Information visualization utilizes computer graphics and [[interaction]] to assist humans in solving problems.|[Purchase et al., 2008, p. 58]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|Information visualization is a set of technologies that use visual computing to amplify human [[cognition]] with abstract information.|[Card, 2008, p. 542]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|Information visualization promises to help us speed our understanding and action in a world of increasing  information volumes.|[Card, 2008, p. 542]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|The purpose of information visualization is to amplify cognitive performance, not just to create interesting pictures. Information visualizations should do for the mind what automobiles do for the feet.|[Card, 2008, p. 539]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|Information visualizations attempt to efficiently map data variables onto visual dimensions in order to create graphic representations.|[Gee et al., 2005]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|Information visualization, an increasingly important subdiscipline within [[HCI (Human-Computer Interaction)|HCI]], focuses on graphical mechanisms designed to show the structure of information and improve the cost of access to large data repositories. In printed form, information visualization has included the display of numerical data (e.g., bar charts, plot charts, pie charts), combinatorial relations (e.g., drawings of graphs), and geographic data (e.g., encoded maps). Computer-based systems, such as the information visualizer and [[Dynamic query|dynamic queries]] have added interactivity and new visualization techniques (e.g., 3D, animation).|[Averbuch, 2004]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|Visual representations of the semantics, or meaning, of information. In contrast to [[Scientific Visualization|scientific visualization]], information visualization typically deals with nonnumeric, nonspatial, and high-dimensional data.|[Chen, 2005]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|A method of presenting data or information in non-traditional, interactive graphical forms. By using 2-D or 3-D color graphics and animation, these visualizations can show the structure of information, allow one to navigate through it, and modify it with graphical interactions.|[UIUC DLI, 1998]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|As a subject in computer science, information visualization is the use of interactive, sensory representations, typically visual, of abstract data to reinforce cognition.&amp;lt;br&amp;gt;Information visualization is a complex research area. It builds on theory in [[information design]], computer graphics, human-computer interaction and cognitive science.&amp;lt;br&amp;gt;Practical application of information visualization in computer programs involves selecting, transforming and representing abstract data in a form that facilitates human interaction for exploration and understanding.&amp;lt;br&amp;gt;Important aspects of information visualization are the interactivity and dynamics of the visual representation. Strong techniques enable the user to modify the visualization in real-time, thus affording unparalleled perception of patterns and structural relations in the abstract data in question.&amp;lt;br&amp;gt;&lt;br /&gt;
Although much work in information visualization regards to visual forms, auditory and other sensory representations are also of concern.|[Wikipedia, 2005]}}&lt;br /&gt;
&amp;lt;center&amp;gt;&#039;&#039;Read full article on [http://www.susanlimsurgery.com/news_trinity_college_trinitys_first_singaporean_and_youngest_fellow.html Dr Susan Lim] [http://www.diamondlinks.net link building service]&lt;br /&gt;
&lt;br /&gt;
[http://www.thegallbladdersymptoms.org/ Symptoms of Gall Bladder Disease] &lt;br /&gt;
[http://wikinstructions.com/ online instructions]&lt;br /&gt;
[http://www.bedbugbitesguide.com/ Bed Bug Bites Blog]&lt;br /&gt;
[http://seoph2.cafe24.com/wordpress seo blog] [[wikipedia:Information visualization|Wikipedia]]&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Quotation|The study of how to effectively present information visually. Much of the work in this field focuses on creating innovative graphical displays for complicated datasets, such as census results, scientific data, and databases. An example problem would be deciding how to display the pages on a website or the files on a hard disk. Visualization techniques include selective hiding of data, layering data, taking advantage of 3-dimensional space, using scaling techniques to provide more space for more important information (e.g. Fisheye views), and taking advantage of psychological principles of layout, such as proximity, alignment, and shared visual properties (e.g. color).|[Usability First, 2003]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|&#039;&#039;&#039;Information visualization&#039;&#039;&#039;, sometimes called InfoVis, is a special kind of visualization. Visualization is a part of computer graphics, which is in turn a subset of computer science.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Visualization is defined as follows [Card et al., 1998]: Visualization is the use of interactive visual representations of data to amplify cognition. This means that the data is transformed into an image, it is mapped to screen space. The image can be changed by users as they proceed working with it. This interaction is important as it allows for constant redefinition of goals when new insight into the data has been gained.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Visualization makes use of what is called external [[cognition]] [Card et al., 1998]. External resources are used for thinking. People are relieved from having to imagine everything. Instead they can just look at an image. This is only possible because human vision has a very large bandwidth, the largest of all senses [Card et al., 1998].&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Information visualization is visualization of [[abstract data]]. This is data that has no inherent mapping to space. Examples for abstract data are the results of a survey or a database of the staff of a company containing names, addresses, salary and other attributes.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Information visualization should be seen in contrast to [[Scientific Visualization|scientific visualization]], which deals with physically-based data. This kind of data is defined in reference to space coordinates, which makes it relatively easy to visualize in an intuitive way. The space coordinates in the dataset are mapped to screen coordinates. Examples are geographic data and computer tomography data of a body.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Visualization of abstract data is not straightforward. One has to find a good way to map data values to screen space. It makes a difference whether the data is structured or unstructured. Examples for structured data are networks, software, and algorithms. This kind of data does not play a role in this thesis, only unstructured data is used here.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Unstructured data is a collection of records with a number of different criteria in each record. The records can be, for instance, the individual fish in a fish-catch. Of each fish the following criteria can be recorded: species, weight, sex, and different measurements of length [...]. The records are arranged in rows, the criteria make up the columns of a table. The records are also called observations. The criteria are sometimes called variables, and sometimes dimensions. [...]|[Voigt, 2002]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|involves abstract, nonspatial data|[Tory and Möller, 2004]}}&lt;br /&gt;
&lt;br /&gt;
{{Quotation|In [[Information Visualization|information visualization]], the graphical models may represent [[Abstract data|abstract]] concepts and relationships that do not necessarily have a counterpart in the physical world, e.g., information describing user accesses to pages of an Internet portal or records describing selected properties of different car brands and models. Typically, each data unity describes multiple related attributes (usually more than four) that are not of a spatial or temporal nature. Although spatial and temporal attributes may occur, the data exists in an abstract (conceptual) data space.|[Ferreira and Levkowitz, 2003]}}&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
Application of information visualization on the computer involves providing &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[http://www.url.vn/2.html/ &amp;lt;span style=&amp;quot;color:black;font-weight:normal; text-decoration:none!important; background:none!important; text-decoration:none;&amp;quot;&amp;gt;thiet ke web&amp;lt;/span&amp;gt;] means to transform and represent data in a form that allows and encourages human interaction. Data can therefore be analyzed by [[exploratory data analysis|&#039;&#039;exploration&#039;&#039;]] rather than pure reasoning; users &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[http://www.vitaminddeficiencyonline.com/ &amp;lt;span style=&amp;quot;color:black;font-weight:normal; text-decoration:none!important; background:none!important; text-decoration:none;&amp;quot;&amp;gt;Vitamin D&amp;lt;/span&amp;gt;] &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[http://www.seo.url.vn/2.html/ &amp;lt;span style=&amp;quot;color:black;font-weight:normal; text-decoration:none!important; background:none!important; text-decoration:none;&amp;quot;&amp;gt;dich vu seo&amp;lt;/span&amp;gt;] can develop understanding for structures and connections in the data by observing the immediate effects their interaction has upon the visualization.&lt;br /&gt;
&lt;br /&gt;
[[Image:zook_large.gif|right|thumb|250px|Information Visualization Example]][[Image:boom.gif|right|thumb|250px|Visualization of a directory structure using a botanical model]]&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
Information visualization is applied in countless areas covering every industry &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[http://www.vietnamairlinestickets.com/2.html/ &amp;lt;span style=&amp;quot;color:black;font-weight:normal; text-decoration:none!important; background:none!important; text-decoration:none;&amp;quot;&amp;gt;Vietnam Airlines&amp;lt;/span&amp;gt;] and all tasks where understanding of the intrinsic structure in data is crucial.&lt;br /&gt;
&lt;br /&gt;
Some prominent examples are:&lt;br /&gt;
*Economical/financial analysis&lt;br /&gt;
*Representation of large hierarchies&lt;br /&gt;
*Medical training/assistance&lt;br /&gt;
*Engineering/Physics&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
*[[Visualization]]&lt;br /&gt;
*[[Scientific Visualization]]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
*[Averbuch, 2004] Michael Averbuch, &#039;&#039;As you Like It: Tailorable Information Visualization&#039;&#039;, Database Visualization Research Group, Tufts University, 2004.&lt;br /&gt;
*[Card, 2008] Stuart Card, Information visualization, in A. Sears and J.A. Jacko (eds.), The Human-Computer Interaction Handbook: Fundamentals, Evolving Technologies, and Emerging Applications, Lawrence Erlbaum Assoc Inc, 2007.&lt;br /&gt;
*[Card et al., 1999] Card, S. and Mackinlay, J. and Shneiderman, B., Readings in Information Visualization: Using Vision to Think, Morgan Kaufmann Publishers, 1999.&lt;br /&gt;
*[Chen, 2005] Chen, C. [http://ieeexplore.ieee.org/xpls/abs_all.jsp?isnumber=31454&amp;amp;arnumber=1463074&amp;amp;count=14&amp;amp;index=3 Top 10 Unsolved Information Visualization Problems], IEEE Computer Graphics and Applications, 25(4):12-16, July-Aug. 2005.&lt;br /&gt;
* [Ferreira and Levkowitz, 2003] Maria Cristina Ferreira de Oliveira, Haim Levkowitz, [http://doi.ieeecomputersociety.org/10.1109/TVCG.2003.1207445 From Visual Data Exploration to Visual Data Mining: A Survey], IEEE Transactions on Visualization and Computer Graphics, vol. 9, no. 3, pp. 378-394, July-September, 2003.&lt;br /&gt;
*[Gee et al., 2005] Gee, A.G., Yu, M., and Grinstein, G.G., Dynamic and Interactive Dimensional Anchors for Spring-Based Visualizations. Technical Report, Computer Science, University of Massachussetts Lowell.&lt;br /&gt;
*[Keim et al., 2006] Keim, D.A.; Mansmann, F. and Schneidewind, J. and Ziegler, H., Challenges in Visual Data Analysis, Proceedings of Information Visualization (IV 2006), IEEE, p. 9-16, 2006.&lt;br /&gt;
*[Plaisant, 2001] Plaisant, C., Information Visualization - Lecture Notes, Created at: November 2001.&lt;br /&gt;
*[Purchase et al., 2008] Purchase, H. C., Andrienko, N., Jankun-Kelly, T. J., and Ward, M. 2008. Theoretical Foundations of Information Visualization. In information Visualization: Human-Centered Issues and Perspectives, A. Kerren, J. T. Stasko, J. Fekete, and C. North, Eds. Lecture Notes In Computer Science, vol. 4950. Springer-Verlag, Berlin, Heidelberg, 46-64. DOI= http://dx.doi.org/10.1007/978-3-540-70956-5_3 &lt;br /&gt;
*[Tory and Möller, 2004] Melanie Tory and Torsten Möller, Human Factors in Visualization Research, &#039;&#039;IEEEE Transactions on Visualization and Computer Graphics&#039;&#039;, 10(1):72-84, January/February 2004.&lt;br /&gt;
*[UIUC DLI, 1998] University of Illinois at Urbana-Champaign Digital Libraries Initiative, UIUC DLI Glossary. Created: November 23, 1998. http://dli.grainger.uiuc.edu/glossary.htm&lt;br /&gt;
*[Usability First, 2003] Usability First, Usability Glossary. Retrieved at: 2003. http://www.usabilityfirst.com/glossary/main.cgi?function=display_term&amp;amp;term_id=5&lt;br /&gt;
*[Voigt, 2002]: Robert Voigt, [http://www.vrvis.at/via/resources/DA-RVoigt/masterthesis.html An Extended Scatterplot Matrix and Case Studies in Information Visualization], Master&#039;s thesis, Hochschule Magdeburg-Stendal, 2002, [http://www.vrvis.at/vis/resources/DA-RVoigt/node4.html &#039;&#039;Classification and Definition of Terms&#039;&#039;]&lt;br /&gt;
*[Wikipedia, 2005] Wikipedia, Information visualization. Retrieved at: July 19, 2005. http://en.wikipedia.org/wiki/Information_visualization&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
&lt;br /&gt;
*http://www.math.yorku.ca/SCS/Gallery/ has a lot of (positive and negative) examples including historical milestones.&lt;br /&gt;
*[http://www.kidney-stones-symptoms-cure.com/ kidney stones symptoms]&lt;br /&gt;
*[http://www.gallbladderdetox.com/gall-bladder-symptoms/ gallbladder symptoms]&lt;br /&gt;
*[http://uvc-thanhlapcongty.com thanh lap cong ty] &lt;br /&gt;
*[http://uvc-thanhlapcongty.com thanh lap cty] &lt;br /&gt;
*[http://uvc-thanhlapcongty.com thành lập công ty]&lt;br /&gt;
*[http://uvc-thanhlapcongty.com/dang-ky-online/dang-ky-thanh-lap-doanh-nghiep.html thanh lap doanh nghiep]&lt;br /&gt;
*[http://uvc-thanhlapcongty.com/dang-ky-online/dang-ky-thanh-lap-doanh-nghiep.html thành lập doanh nghiệp] &lt;br /&gt;
*[http://uvc-thanhlapcongty.com/van-ban-phap-quy/dang-ky-kinh-doanh.html dang ky kinh doanh]&lt;br /&gt;
*[http://www.gallbladderdetox.com/gall-bladder-symptoms/ gallbladder disease symptoms]&lt;br /&gt;
*[http://uvc-thanhlapcongty.com/cung-cap-dich-vu/dich-vu-ke-toan.html dich vu ke toan] &lt;br /&gt;
*[http://uvc-thanhlapcongty.com/cung-cap-dich-vu/dich-vu-ke-toan.html dịch vụ kế toán] &lt;br /&gt;
*[http://uvc-thanhlapcongty.com/cung-cap-dich-vu/dai-ly-bao-cao-thue.html bao cao thue]&lt;br /&gt;
*[http://www.nhakhoavietgiao.com.vn/list2.php?cid=49 nha khoa]&lt;br /&gt;
*[http://namthaibinhduong.edu.vn tu van du hoc]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Glossary]]&lt;/div&gt;</summary>
		<author><name>Mahfujalubna</name></author>
	</entry>
</feed>