Creating a Scatterplot

Get Complete Project Material File(s) Now! »


This Literature Review examines free Graphical Tools that produce interactive output ideal for web-based viewing. Three di erent Classi cations of tools are examined: GUI Tools, High-level languages and Low-level1 languages.
Section 4.5 covers Other Relevant Topics, including how R might be used to aid in preparing and exporting data for use with one of the tools, and brief explanations on the di erence between raster and vector graphics, or how the SVG image le format works, to make the review more accessible to audiences unfamiliar with such details.
N.B. This Literature Review was conducted in 2012, and many details may now be out-of-date.


In keeping with the spirit of Open Data, I am interested in free tools, so that a casual user interested in exploring some Open Data can use such a tool at no cost.
Ideally, not only is the tool free, it is also Open Source. The distinction is not very important for the casual user, but for me as I look to develop new tools, existing tools that are Open Source provide opportunities to learn and/or extend functionality.
Additionally, if the output is also in an Open Format (such as SVG), this opens up opportunities to utilise multiple tools (that share this Open Format) in conjunction, for greater e ect.

Interactive Web-based Output

I focus on interactive output rather than more traditional static images as these are more interesting, and are a better candidate for future work. Being web-based makes the output substantially easier to share, and also passes o much of the rendering burden to web browser developers, allowing me to focus more on visualisation methods. I classify interactivity into two categories:
Simple Interactivity This includes cases where the user can mouseover a bar on a bar-graph, or a slice of a piechart, and obtain more information about that bar or slice. It is technically interactive and not static, but typically adds very little value.
End-user Data Exploration This is where the nal output can be used by the end-user2 to explore the data in some way. At the very basic level, this may involve merely

Tool Classi cation

I classify the tools broadly into three categories: GUI (Graphical user interface), High-Level language and Low-Level language.
Note that the de nition of High- and Low- level programming languages is largely rel-ative. A quick google search suggests a conventional de nition for a Low-level language might be something like an assembly language. For the purposes of this review the follow-ing de nitions will be used:
GUI A typical example would be a point and click interface, requiring absolutely no writing of code to accomplish the desired task. Without doubt, to a casual user the GUI is the most accessible and desired tool.
High-level A language that can achieve the desired result with a few lines of very simple code, usually involving speci c High-level functions that perform several tasks. An example might be doing a simple linear regression model in R. The task can be accom-plished with a single call to lm to t the model. We may then need a few additional calls to check the assumptions are met and print the output. Excel formulae may also fall under this de nition, though in that case, the formulae can be used via a GUI rather than direct ‘coding’. Under this rather restrictive de nition of High-level language, it is feasible that a casual user might be willing to learn and use a High-level language tool, though they would be resistant to such a notion.
Low-level A language that requires several lines of code to achieve the desired result, including the use of primitive or Low-level functions that only accomplish a very narrow, simple and speci c task (such as drawing a single rectangle). Under this de nition, a language like JavaScript would be considered Low-level, as it would be di cult to learn and use for the casual user. While out of reach for the casual user, these Low-level language tools will be valuable in the creation of new tools more appropriate for the casual user.
<!– /* Font Definitions */ @font-face {font-family:PMingLiU; panose-1:2 1 6 1 0 1 1 1 1 1; mso-font-alt: »Arial Unicode MS »; mso-font-charset:136; mso-generic-font-family:auto; mso-font-format:other; mso-font-pitch:variable; mso-font-signature:0 134742016 16 0 1048576 0;} @font-face {font-family: »Cambria Math »; panose-1:2 4 5 3 5 4 6 3 2 4; mso-font-charset:0; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:-536869121 1107305727 33554432 0 415 0;} @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:-469750017 -1073732485 9 0 511 0;} @font-face {font-family: »\@PMingLiU »; panose-1:0 0 0 0 0 0 0 0 0 0; mso-font-charset:136; mso-generic-font-family:auto; mso-font-format:other; mso-font-pitch:variable; mso-font-signature:0 134742016 16 0 1048576 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-unhide:no; mso-style-qformat:yes; mso-style-parent: » »; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family: »Calibri », »sans-serif »; mso-fareast-font-family:Calibri; mso-bidi-font-family:Arial;} .MsoChpDefault {mso-style-type:export-only; mso-default-props:yes; font-size:10.0pt; mso-ansi-font-size:10.0pt; mso-bidi-font-size:10.0pt; mso-ascii-font-family:Calibri; mso-fareast-font-family:Calibri; mso-hansi-font-family:Calibri; mso-bidi-font-family:Arial;} @page Section1 {size:612.0pt 792.0pt; margin:70.85pt 70.85pt 70.85pt 70.85pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} /* List Definitions */ @list l0 {mso-list-id:55; mso-list-type:hybrid; mso-list-template-ids:1662981776 -1 -1 -1 -1 -1 -1 -1 -1 -1;} @list l0:level1 {mso-level-start-at:5888; mso-level-text: » »; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level2 {mso-level-start-at:5888; mso-level-text: » »; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level3 {mso-level-start-at:5888; mso-level-text: » »; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level4 {mso-level-start-at:5888; mso-level-text: » »; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level5 {mso-level-start-at:5888; mso-level-text:
Figure 4.1: The Many Eyes ‘interface’. This is a screenshot of one of the webpages used to create a new plot. Many Eyes is entirely web-based and requires no separate client software.

2 Open Data in New Zealand 5
2.1 Introduction
2.2 What is Open Data?
2.3 Overview of Open Data in New Zealand
2.4 Conclusion
3 TableToLongForm
3.1 Introduction
3.2 How to Use
3.3 Vocabulary
3.5 Identication
3.6 Discern Parentage
3.7 Reconstruction
3.8 Summary
4 Graphical Tools
4.1 Introduction
4.2 GUI Tools
4.3 High-level Languages
4.4 Low-level Languages
4.5 Other Relevant Topics
4.6 Conclusion
5.1 Introduction
5.2 What is WeBIPP
5.3 How to Use
5.4 Creating a Scatterplot
5.5 Creating a Population Pyramid
5.6 How WeBIPP Works
5.7 Creating an Object Addon
5.8 Creating a Value Interface
5.9 Core’s Set Attribute
5.10 Discussion and Limitations
5.11 Conclusion and Future Work .
Presentation Methods for Open Data

Related Posts