Articulate : a Conversational Interface for Visual Analytics Yiwen Sun * Jason Leigh † Andrew Johnson ‡ Dennis Chau § Electronic Visualization Laboratory, University of Illinois at Chicago A While many visualization tools exist that offer sophisticated func- tions for charting complex data, they still expect users to possess a high degree of expertise in wielding the tools to create an effective visualization. This poster presents Articulate, an attempt at a semi- automated visual analytic model that is guided by a conversational user interface. The goal is to relieve the user of the physical burden of having to directly craft a visualization through the manipulation of a complex user-interface, by instead being able to verbally ar- ticulate what the user wants to see, and then using natural language processing and heuristics to semi-automatically create a suitable vi- sualization. Index Terms: H.5.2 [Information Interfaces and Presentation]: User Interfaces—Graphical user interfaces 1 I Visual analytic tools have been used in a variety of disciplines to synthesize information and derive insight from abstract data-sets. The combined complexity of certain tools and visual design itself can be daunting, so much so that the modification of visual parame- ters isn’t predictable, even for visualization experts. Unfortunately the users of such tools are usually domain experts with marginal knowledge of visualization techniques. These users often experi- ence difficulties when trying to manage simple visual parameters, such as specifying a desired graph type for a given data set, or as- signing proper data fields to certain graph dimensions. To facili- tate the use of these tools by domain experts, we propose a semi- automated visual analytic model: Articulate. The goal is to provide a streamlined experience to non-expert users, allowing them to fo- cus on using the visualizations effectively to generate new findings. Mackinlay et al. described Show Me[7], an integrated set of user interface commands and defaults that automatically generate visual presentations based on VisQL specification language. Users place data into columns and rows to specify VisQL commands. In order to generate meaningful visualizations, an understanding of the rela- tionships between columns and rows is needed. Rezk-Salama et al. demonstrated a semantic model for automatic transfer function as- signment in volume rendering applications [8]. However the design of the semantic model is such that the presence of computer scien- tists and domain experts are needed when generating a visualiza- tion. Lastly, a 2007 National Science Foundation workshop report on “Enabling Science Discoveries Through Visual Exploration” [6] indicated that “there is a strong desire for conversational interfaces that facilitate a more natural means of interacting with science.” This inspired us to adopt a conversantional interface in the semi- automated visual analytic model. Our Conversational Visualization Language (ConVL) is in many ways an homage to the simplicity of languages such as Apple’s HyperTalk [5]. It differs from other languages, such as Gnuplot * e-mail: ysun25@uic.edu † e-mail: spiff@uic.edu ‡ e-mail: ajohnson@uic.edu § e-mail: koracas@gmail.com script or Graphics Production Language [9], in that each command is mapped to a query rather than requiring specific assignment. It allows the user to explain what they want to see in a brief manner. This type of conversational language is ideal for integration with a speech recognition module - one of the ultimate goals of Articulate. 2 V A M The system model for Articulate is shown in Figure 1. The main idea is to integrate the user’s requirements and data properties to automatically generate an appropriate visual result. Figure 1: System Model for Articulate There are three main components in the model: ConVL input parser, data parser, and graph reasoner. 2.1 ConVL Input Parser Visualization requirements are expressed in ConVL. The grammar of ConVL will be given in Section 3. The input parser translates the ConVL command to a sequence of intermediate expressions which are presented as a pipeline of lower-level instructions. Similar to other low-level visualization languages, it specifies topology as- signment, visual parameters, and general graph type. It provides the graph reasoner with a basis for the optimization and generation of the final visual product. 2.2 Data Parser The data parser reads the original data file searching for data fields such as attribute names, data types (numerical values, text or time) and data structures (tables or trees). Furthermore, data properties are determined such as statistics features (the minimum and maxi- mum values, number of categories). This information is sent to the graph reasoner for visual parameter assignment. 2.3 Graph Reasoner In our model, the reasoner is the key component responsible for the semi-automated generation of visualizations. Information about the data from the data parser and the intermediate expressions gen- erated from parsing the user’s input are funneled into the Graph Reasoner. Properties of various graph types are also funneled in via the graph specification, which include dimensions, layouts and data restrictions. The reasoner uses this information to determine the most appropriate visualization to generate. For example, a command such as “compare GDP among coun- try” will result in the creation of a bar chart or a line chart. These graphs, according to Abela’s chart chooser [4], are often used for