How it Works
VisualEyes allows users to interactively browse historical events in a number of ways. It is a generative browser, allowing users to not only view preset collections of events, but to construct their own views of the events based on selected criteria. VisualEyes makes it easy to construct complex queries about events, weaving maps, timelines, and data visualizations to encourage insight.
VisualEyes is a tabbed-based collection of views of spatial and temporal events and data that can be interactively shown within a time period using the timeline tool. Views can contain event descriptions, primary source documents and imagery, maps, digital movies and audio, animations, charts and graphs of data.
Each view represents the result of choices of what to show in that view. The views can show events that match certain criteria, ranging from “show all events in Antioch, Virginia” to a sophisticated query such as “show all events where Jefferson bought more than 3 trees from 1796 to 1820, but not ones from Thomas Mayne.”
These views can be fixed for demonstration purposes, or left open, for people to explore various relations between the elements provided allowing for both purposeful and serendipitous discovery of complex interrelations.
There are three important aspects that make VisualEyes unique among other web-based techniques for visualization:
- Ease of Creation- VisualEyes can be easily configured by non-programmers to create complex dynamic visualizations that were previously only possible by employing highly skilled (and expensive) computer programmers to develop single purpose displays. VisualEyes is a generalized tool capable of representing a wide array of visualizations through the development of simple scripts that link resources and data into compelling, interactive, and instructive visual investigations.
- Dynamic generation- The value of connecting data and graphics has long been established in Geographic Information Systems (GIS), but current GIS systems have very limited abilities to dynamically generate visualizations over the Internet. In contrast, VisualEyes's visualizations are dynamically generated in real time in response to live data and requests for different views of that data and is not a static presentation of information.
- Access - Resources can come from anywhere on the web, such as the Library of Congress and other archives. Data can come from the census and a wide range of personal, public and academic sources and dynamically visualized.
The Anatomy of a VisualEyes Project
VisualEyes can be compared to a "virtual Lego set," where a number of building blocks can be endlessly combined to create presentations. Some of these basic blocks are maps, overlays, data sets, timeline and user controls. The blocks are connected to one another with a simple, but powerful scripting language called "Glue" (General Language to Unite Events).
VisualEyes consists of a main screen which can have a number of tabbed views with an optional timeline and animation player control.The view contains a number of resources, such as images, maps, pop-up boxes, data sets, and graphs. Each view may contain a number of control panels that contain controls such as check boxes and sliders to set aspects of that view.
For example, in Andrew Torget's Texas Slavery Project (TSP), he wanted to have the counties on the map be shaded differently according to the population of slaves in that county, we would connect the timeline's position to query the database containing the populations for the counties by year, and set the color of each county accordingly.
The data for the TSP project is in a mySQL database.The data was extracted according to the current year (gleaned from the position of the time timeline's slider bar), and the the settings of the "Shared by" radio buttons. In this case, we asked for the total slave population for 1837. That data was used to color the map according to the population. Clicking on the "Graph Counties" checkbox caused that data to be further reduced to only slaves from Austin County and graphed.
This was easily accomplished by connecting the various resources (the data and the maps) and writing a simple XML script to connect them together. Currently, this script is created in a text editor, but an interactive editor will be developed to make the process of creating VisualEyes projects as simple as creating web pages
The TSP project demo can be found here, and script that connects all the parts can be viewed here. The specifications for creating the scripts can found here.
Resources Supported
There are four basic kinds of information (resources) VisualEyes can display and search for:
- Maps - VisualEyes contains a fully interactive geographic information viewer to display three basic kinds of maps. 1) Scans of historical maps, 2) vector-based maps from GIS systems such as arcGIS, and 3) maps delivered from Internet-based web services, such as Google Maps, or any combination of the three. All maps can be easily panned and zoomed, with an option to see an overview inset. Shape data can come from specified tables in a SQL/mySQL database, a link to an XML file, or from Internet-based web service.
- Data - A rich array of historical data can be imported into VisualEyes from a database as a table. This data can be displayed as a layer on a map, shown as a chart, table, or graphic element, and most importantly, used to include or omit events in the views. Data can come from specified tables in a SQL/mySQL database, a link to an XML file, or from Internet-based web service.
- Images/Movies - Digitized images of primary source documents from digital archives can be displayed and integrated into maps, animations and other visualizations. These images can be JPEG, GIF or PNG formats, and can be dynamically sized and positioned, and Flash movies and animations.
- Events - Historical events which contain information about a particular event such as the date, title, brief descriptive narrative, NCSS standards, links to primary source documents and imagery, location information (latitude and longitude) and key words that help aid finding events. The source of the card’s data comes from any database.
View Components
An unlimited number of views can be constructed from these three basic resource elements. Views can be interactive, enabling users to change how the various resources interact, or static, allowing for a didactic interpretation of the events.
The infrastructure for a view contains a procedural description of how the information is displayed with conditional comparisons and loops so that very sophisticated queries can be performed. These queries are easily constructed using pull down menus for the various options desired indicating the relationships between the various resources.
Control Panels - Each View has its own pull-out area docked to a side of the screen that can be expanded or collapsed as needed and contains a number of collapsible check boxes to toggle on and off various features of the map, such as data overlays, roads, rainfall, town names, etc. Various map features, such as the overview navigation insert and map legend can be turned on and off here as well, but assigning some "Glue" to be activated on clicking. Control panels can contain:
- Radio Buttons
- Check Boxes
- Combo Boxes
- Slider Controls
- Text Input Boxes
- Buttons
- Headers
- Legends
Timelines - Each view can have its own timeline that can control the temporal aspect of the project. Sliding the cursor changes the view's date, which in turn can change the way in which information is displayed if it is time dependent.
Animation Players - The current time on the timeline can be animated over time, using a player control, allowing the project to animate any time dependent elements from any point on the timeline to another.
Annotations and Graphs
Areas on the map can be identified by to highlight particular sections, provide click-able links to pull up a web page, draw graphical elements, or popup window showing some information:
- A particular section of the map can be highlighted by overlaying a rectangle, ellipse, or circle surrounding a particular latitude and longitude. This shape can darken, lighten, tint, or texture the underlying area, and can be dynamically positioned and sized based on data query relationships.
- Graphical elements such as lines, boxes, arrows, etc. can be drawn using a latitude and longitude positions and can be dynamically positioned and sized based on data query relationships.
- Links can be assigned to cause a web page to open in a new browser window when the area within a particular latitude, longitude, and radius is clicked.
- A popup window can open when the area within a particular latitude, longitude, and radius is clicked. This popup can contain text, graphics, table data, charts and graphs, movies, audio, or images. The contents of the popup are dynamically defined by the data query relationships..