## Investigating Direct Manipulation of Graphical Encodings as a Method for User Interaction

Bahador Saket, Samuel Huron, Charles Perin, and Alex Endert

Abstract -We investigate direct manipulation of graphical encodings as a method for interacting with visualizations. There is an increasing interest in developing visualization tools that enable users to perform operations by directly manipulating graphical encodings rather than external widgets such as checkboxes and sliders. Designers of such tools must decide which direct manipulation operations should be supported, and identify how each operation can be invoked. However, we lack empirical guidelines for how people convey their intended operations using direct manipulation of graphical encodings. We address this issue by conducting a qualitative study that examines how participants perform 15 operations using direct manipulation of standard graphical encodings. From this study, we 1) identify a list of strategies people employ to perform each operation, 2) observe commonalities in strategies across operations, and 3) derive implications to help designers leverage direct manipulation of graphical encoding as a method for user interaction.

Index Terms -Direct Manipulation, Data Visualization

## 1 INTRODUCTION

The visualization community has advocated for the need to design more natural and fluid interactions for data visualization tools [12]. A recent line of research investigates how to enable users to convey their intended operations by direct manipulation [41] of the graphical encodings used to represent the data (e.g., [3, 7, 10, 13, 18, 20, 21, 29, 31, 33, 35, 37, 42, 43,47]). For example, DimpVis [20] allows users to directly interact with the length, angle and position of the visual representations, as a means for temporal navigation. With DimpVis, users can drag a bar in a bar chart vertically to adjust its height. This makes it possible to explore the values for the bar over time, and to search for times at which the bar had a particular value. The appeal of direct manipulation can be attributed to multiple factors. First, direct manipulation interfaces benefit users experience by not requiring people to shift their attention from the visual features of interest when interacting [20, 28]. Second, they simplify the interface by obviating the need for additional control panels or widgets and opens the screen real estate [4, 20, 22].

To help designers create effective tools that implement this form of interaction, there is a need for empirical evidence to guide their design decisions. What type of direct manipulation strategies do people perform to convey their interest in performing visualization operations? Are there strategies that are consistently employed to perform a given operation? Are there some that conflict across operations? Addressing these questions through empirical studies will lead to design principles and guidelines to support further development of visualizations.

We take an initial step to address these questions by conducting a qualitative study in which 10 participants each performed 15 operations on three standard visualizations (scatterplot, bar chart, and histogram). By using a think-aloud protocol and video analysis, we obtain rich qualitative data from which we extract a list of strategies people employ to perform each operation. We then identify strategies that have consensus, and strategies that are conflicting with each other. Our analysis of the results further sheds light on four high-level categories of strategies ( exemplification , declaration , instrumentation and selection ) from which we derive implications to help designers leverage direct manipulation of graphical encoding.

- · Bahador Saket is with Georgia Tech. E-mail: saket@gatech.edu
- · Samuel Huron is with university Paris Saclay. E-mail: samuel.huron@telecom-paristech.fr.
- · Charles Perin is with University of Victoria. E-mail: cperin@uvic.ca.
- · Alex Endert is with Georgia Tech. E-mail: endert@gatech.edu

Manuscript received xx xxx. 201x; accepted xx xxx. 201x. Date of Publication xx xxx. 201x; date of current version xx xxx. 201x. For information on obtaining reprints of this article, please send e-mail to: reprints@ieee.org. Digital Object Identifier: xx.xxxx/TVCG.201x.xxxxxxx

This work contributes the following to the area of interaction design in visualization: (1) a qualitative characterization of user-defined direct manipulation strategies for performing different operations on visualizations, (2) insight into users' mental models when using direct manipulation of graphical encodings as a method for user interaction, and (3) a set of actionable implications for designing interactive data visualization tools. Our results will help designers leverage direct manipulation of graphical encodings as a method for user interaction.

## 2 BACKGROUND

We first discuss the concepts of direct manipulation [41] and instrumental interaction [4], two key concepts on which research about direct manipulation in visualization is strongly relying. We then discuss the work related to direct manipulation of graphical encodings.

## 2.1 Direct Manipulation and Instrumental Interaction

Direct manipulation enables users to directly act on the visual objects of interest [41] and provides immediate visual feedback in response to physical actions (e.g., dragging a folder on the desktop using the mouse). Direct manipulation actions are simple and support continuous flow of interaction. Instrumental interaction [4] generalizes the principles of direct manipulation by introducing instruments, that act as mediators between users and objects of interest. For example, sliders or check boxes can be used as instruments for filtering data points. Researchers who have applied instrumental interaction principles to visualizations [12, 20, 22, 28]; highlighted the need to minimize the spatial indirection (the distance between the interaction source and the target object), and the temporal indirection (the delay between invoking an operation and observing the result of that operation) [28].

## 2.2 Direct Manipulation of Graphical Encodings

Building on the concepts of direct manipulation and instrumental interaction, embedded interactions [38] are interactions in which users directly manipulate visual marks (e.g., bars in a bar chart) in visual representations rather than widgets and menus to perform a task. The goal of embedded interaction is to tighten the gap between one's intent and the execution of that intent - thus reduce what Hutchins et al. call the gulf of execution [17]. It is propitious to congruent interactions [28]: interactions whose action, reaction, and feedback are cognitively congruent to the intent of the user. These approaches can make interactions more discoverable, resulting in easier to learn and use applications [28].

There is a growing interest in the infovis and visual analytics communities to develop this form of interaction for visualizations. A large set of visualization authoring tools enable graphic designers to construct customized visualizations (e.g., [19, 23, 26, 32]). These tools use direct manipulation as a method for creating customized visual glyphs. For instance, Data Illustrator [23] enables users to adjust the size of the circle by directly dragging its outline. There are also visualization tools that enable users to perform their analytical tasks using direct manipulation of graphical encodings, for example by letting users convey their interest in sorting a bar chart by dragging the tallest bar to the extreme left or right [24, 34, 37]. We found 16 papers that explicitly investigate direct manipulation of graphical encodings as a method to let users perform their analytical tasks [3, 7, 10, 11, 13, 18, 20, 21, 29, 31, 33-35, 37, 39, 42, 43, 47].

We organize this body of work according to which visualization type they support. We further structure our discussion of each visualization type according to the encodings that previous work has explored and the meanings that were assigned to their direct manipulation.

## 2.3 Visualization type: 2D Scatterplot

Direct manipulation of position [3, 20, 37], size [21, 37], and color [37] of data points in 2D scatterplots have been explored.

Position. Direct manipulation of position in scatterplots has been implemented through drag and drop of data points. This has been used to allow users to convey their interest in: navigating the temporal dimension of a dataset [20]; changing the axes of the scatterplot or to switch to a bar chart [37]; and adjusting the values of data points [3]. Researchers in visual analytics have explored direct manipulation of position in scatterplots that represent outputs of statistical models, for example to steer clustering models [10]; to steer distance and similarity functions by moving data points closer or further to each other [11,13,43,47]; and to define and modify axes of scatterplots by dragging and dropping data points to either side of the x or y axes [18].

Size. Direct manipulation of size has been implemented through drag of the outline of a data point's representation. Prior work enabled users to directly manipulate the size of data points shown in a scatterplot to demonstrate their interest in changing the size of data points [21,37], and mapping a data attribute to the size of data points [37].

Color. The direct manipulation of color has been implemented through using a relatively indirect color picker in a contextual menu close to the visual mark. This has been used to change the color of all data points in a scatterplot, and to assign a data attribute to the color of points [37].

## 2.4 Visualization type: Bar Chart and Histogram

Direct manipulation of position [24,37,39], height [3,20], and width [7, 39] of bars in bar charts and histograms have been explored.

Position. Direct manipulation of position in these visualizations has been implemented through drag and drop of bars. This has been used to execute abstract operations: to sort a bar chart by dragging the tallest/shortest bar to its extreme left or right side [24,37]; and to merge two bars by dragging and dropping a bar on top of another one [39].

Height. Direct manipulation of height has been implemented through drag of the top border of a bar. Direct manipulation of the height of bars has been used as a method to convey an interest in navigating the temporal dimension of a dataset [20]; to adjust the values of data points in bar charts [3]; and to adjust the weight assigned to an attribute as a method for steering the underlying model used for computing the visual representation [18].

Width. Direct manipulation of bar width has been implemented through drag of the left/right borders of a bar to interactively merge and split the bins of a histogram [39].

Color. Direct manipulation of color has been implemented with a color picker in a contextual menu close to the visual mark, to change the color of all bars or to assign a data attribute the color of bars [37].

## 2.5 Other Visualization Types

Most research on direct manipulation of graphical encodings has focused on 2D scatterplots and bar charts / histograms, probably due to the simplicity and widespread use of these visualizations. However, some researchers have also enabled direct manipulation of graphical encodings in other visualization types. This includes the direct manipulation of: position of cells in table visualizations to either steer the underlying ranking model [46] or explore rankings [31,44]; angle of a pie chart segment to navigate the time dimension [20]; rows and columns in matrix visualizations [30,42]; nodes in tree visualizations [45]; and position of tokens in unit based visualizations [16].

## 2.6 The Next Step: Collecting Empirical Data

Because direct manipulation of graphical encodings is a recent topic of research, existing work has explored sparse points in the design space by selecting operations to be invoked and decided which strategies should be used to invoke each operation. It is now appropriate to empirically study these designs. Table 1 summarizes the operations and associated strategies from previous work for 2D scatterplots, bar charts, and histograms. Although we focus on visualization operations and discard analytical ones, this list gives a starting point for gathering empirical data regarding how people accomplish such operations.

## 3 PRELIMINARY STUDIES

We conducted two preliminary studies to determine which approach to use to empirically investigate direct manipulation of encodings.

## 3.1 Preliminary Study 1: Paper-Based Study

In our first pilot study, we asked three participants (2 male, 1 female) to verbally explain how they would perform a series of visualization tasks using direct manipulation of graphical encodings on paper prints of visualizations. Providing participants with paper-based visualizations makes it possible to remove constraints that come with any implemented system, thus give more freedom and expressivity to participants.

We printed a bar chart representing the Cars dataset [15]. We explained the concepts of marks, encodings, labels, and direct manipulation of graphical encodings to the participants. We then explained the visualization and the data. We gave each participant three operations to perform in a random order (e.g., How would you show that you are interested in sorting the bar chart in an ascending order?) . We asked participants to verbalize how they would perform each operation only using direct manipulation of the encodings used in the visualization.

Overall, participants found it challenging to explain their strategies without being able to actually perform the operations. For example, one participant said: 'Should I imagine that I can change the width of the bar? [...] then what is the system response?' , and another 'I have no idea what happens if I move this bar!' Moreover, participants often did not restrict themselves to direct manipulation of graphical encodings only. For example, to sort the bar chart, one participant said he would first drag the tallest bar to the right side of the bar chart and added: 'Now I expect to see a drop-down menu that has the 'sort' option. ' -thus combining direct manipulation of graphical encodings and WIMP.

Based on the results of this first study, we decided to provide an interactive tool that supports direct manipulation of different graphical encodings used in visual representations. This would ideally help us avoid participants' confusion as to what interactions are available to them and how those interactions are implemented. In addition, we could encourage the participants to think of strategies that rely solely on direct manipulation of encodings, if no other interactions are available.

## 3.2 Preliminary Study 2: Partial Implementation

We conducted a second pilot study with four new participants (4 male) using a prototype with limited functionality. We developed a web-based interactive bar chart showing the Cars dataset [15] and supporting direct manipulation of graphical encodings used in bars (e.g., changing the height of a bar). We explained the visualization, data, and available interactions to the participants. Then we asked them to perform the same three operations as in the first pilot study using the system.

Participants were able to perform 8 out of 12 operations (4 participants × 3 operations) using direct manipulation of graphical encodings. Although participants found some operations challenging to invoke (e.g., assigning a new data attribute to the axis), this pilot study indicated that using an interactive prototype is an appropriate way of eliciting people's strategies for performing operations using direct manipulation of graphical encodings.

Table 1. The 15 basic operations that have been used in previous work for direct manipulation of graphical encodings in 2D scatterplot, bar chart and histogram. We use all 15 operations in our study. The last column ( Phrasing ) contains the exact sentence participants were told in our study. All the operations started with ' How would you interact with this system to show that you are interested in: '

| Encoding   | Visualization   | Operation                                                                                                                                                                              | Phrasing                                                                                                                                                                                                        |
|------------|-----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Position   | Scatterplot     | O 1 Assign a data attribute to an axis [18,37] O 2 Switch from a scatterplot to a bar chart [37] O 3 Navigate the values of a point over time [20] O 4 Adjust the value of a point [3] | Assigning the horsepower attribute to the x-axis Switching from a scatterplot to a bar chart Checking if this specific car has ever had the price of 20,000? Adjusting the value of this specific car to 30,000 |
| Position   | Bar chart       | O 5 Group the bars into one bar [39] O 6 Sort the bar chart [24,37]                                                                                                                    | Merging the bars representing SUV and Wagon cars Sorting the bar chart in an ascending order                                                                                                                    |
| Size       | Scatterplot     | O 7 Change the size of all points [21,37] O 8 Assign a data attribute to the size of points [37]                                                                                       | Change the size of all data points, so that they are all equally bigger Assigning city mile per gallon attribute to the size of points                                                                          |
| Color      | Scatterplot     | O 9 Change the color of all points [37] O 10 Assign a data attribute to the color of all points [37]                                                                                   | Changing the color of all points to red Assigning the cylinder attribute to the color of all points.                                                                                                            |
| Color      | Bar chart       | O 11 Change the color of all bars [37] O 12 Assign a data attribute to the color of all bars [37]                                                                                      | Changing the color of all bars to red Assigning the car type attribute to the color encoding                                                                                                                    |
| Height     | Bar chart       | O 13 Navigate the values of a point over time [20] O 14 Adjust value of a bar [3]                                                                                                      | Checking if the number of sedan cars have ever had the value of 35? Adjusting the number of the SUV cars to 15                                                                                                  |
| Width      | Histogram       | O 15 Expand the range of a bin in a histogram [39]                                                                                                                                     | Expanding the range of this specific bin from 2009 to 2010?                                                                                                                                                     |

## 4 STUDY DESIGN

In this study, we investigate how people perform the visualization operations listed in Table 1 using direct manipulation of graphical encodings. We describe the visualization and encoding types we used, the operations from Table 1, the dataset we used in the study and the software implementation. Then we describe our participants and settings, study procedure, and data collection method and analysis.

interviewer has uploaded a bar chart and asked a participant to perform an operation, the participant can use any of the provided interactions to convey their intention to perform this operation. The tool only enables participants to manipulate the encodings and does not recompute the visualization (similar to a drawing interface like Adobe Illustrator). Enabling the participants to convey their actions without the system reacting to those actions makes it possible to observe participants' unrevised behavior, and drive system design to accommodate it.

## 4.1 Visualization and Encoding Types

Given its qualitative and observational nature, we included a small number of (three) visualization types in the study to keep it within reasonable time. We selected scatterplot , bar chart and histogram because: i) they are among the most commonly used visualizations [14]; and ii) direct manipulation of graphical encodings has been well researched with these visualizations, as shown in Table 1. We studied the five encodings that have been explored in previous work for these visualizations: position and color for scatterplot and bar chart; size for scatterplot; height for bar chart; and width for histogram.

## 4.2 Operations

We included in our study all 15 operations, O1 to O15 , listed in Table 1. We made this choice to compare the strategies implemented in previous work for each operation with the strategies our participants would perform. We also made the choice to focus on operations for visualization construction (i.e., that are designed to specify the visualization), and excluded operations that are designed to steer underlying models used for computing visualizations (e.g., InterAxis [18]).

## 4.3 Datasets

Most operations listed in Table 1 are generic enough to not depend on the dataset being used. For example, assigning a data attribute to an axis can be performed on any scatterplot regardless of the underlying tabular dataset. Operations that involve navigating temporally, however, require a dataset that contains at least one temporal dimension. Based on this constraint, we selected the widely used cars [15] and movies [1] datasets, which have also been used in related studies (e.g., [18,20,37]).

## 4.4 Interactive Tool and Interactions

We developed an interactive visualization tool using JavaScript and the D3 library [5]. An Upload ( /upload\_alt ) button supports uploading the pre-defined visualizations we used in our study. A Reset button ( /refresh ) supports resetting the visualization. We added interactivity to the encodings used in visualizations. For instance, participants could change the position, color, width, and height of the bars in a bar chart. Or, they could change the size, position, and color of circles in a scatterplot.

The tool shows one visualization at a time. Participants can directly manipulate the encodings in the visualization. For example, after the

To add interactivity to the five graphical encodings (position, height, width, size, color) investigated in this study, we kept our implementation of interactions as close as possible to previous work (Figure 1 illustrates these interactions for the bar chart and the scatterplot):

- 1. Position. We afforded the repositioning of circular data points in a scatterplot or bars in a bar chart or histogram anywhere on the screen through drag and drop.
- 2. Height and Width. Clicking on a bar in a bar chart or histogram makes four small handles (black circles) appear on the four sides of the bar. Dragging the left and right handles changes the width of the bar; dragging the top and bottom handles changes its height.
- 3. Size. Clicking on a circular data point in a scatterplot makes a small handle (black circle) appear on the perimeter of the circle. Dragging the handle changes the size (radius) of the circle.
- 4. Color. Right clicking on a mark (circular data point in scatterplot, bar in bar chart or histogram) makes a color picker appear. Picking a color from the color picker changes the color of the mark.

## 4.5 Participants and Settings

We recruited 10 non-color blind participants (4 females, 6 males), aged 20-30 (mean 24 8) via email and word of mouth at our university. They . were students enrolled in computer science (5), physics (1), psychology (2), and mechanical engineering (2). All reported being familiar with reading visualizations, and eight had created visualizations before. Four took the information visualization course taught at our university. Some participants had experience with visualization tools such as Microsoft Excel (8), D3.js (4) and Processing (1). None of them had participated in the pilot studies. Participants sat approximately 30-40 cm from a 13' LCD display with a resolution of 2560 × 1600 pixels equipped with a mouse and keyboard. The visualizations were shown in full screen.

Given the qualitative nature of the study, we determined participant numbers based on empirical saturation [8] - which can be reached with as low as 6 participants [27]. Two authors of this paper watched the screen-recorded videos after each session to get a sense of the strategies the participant used to perform the operations. In addition, during each session the interviewer took notes of high-level strategies that the participant employed to perform each operation. As we progressed through our study, we discussed these notes, identifying whether the

Fig. 1. This figure shows our study platform and supported interactions for different visualizations: bar chart (left) and scatterplot (right). Users can (1) resize , (2) reposition , and (3) recolor bars and points directly.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-1ed8cccf-750e-439d-b4c0-1b8bc269bcaf.jpg)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-6c0dca8b-326e-4bb6-a23e-9b24996ff939.jpg)

observed strategies were repeats or newly observed strategies. The sessions with participants 9 and 10 generated limited new strategies, suggesting that we had reached empirical saturation. We then discussed our informal findings as a group and decided to conclude the study.

they could not perform it with the supported interactions. They could also suggest more than one strategy for performing each operation.

## 4.6 Procedure

1. Introduction (~10 min). Participants were briefed about the purpose of the study and their rights. After filling out the study consent form and a questionnaire on demographics and visualization expertise, they watched a three-minute video explaining the concepts of marks, encodings, labels, and axes. Participants could replay the video as they liked. Then, they were given a sample of the movies dataset printed on a sheet of paper. After the experimenter had explained to them the meanings of rows and columns, they were asked to familiarize themselves with the data for two minutes and ask any question they might have.

- 2. Training (~10 min). In this phase, participants were shown a scatterplot, a bar chart, and a histogram all created with the movies dataset (one visualization at a time, in a random order). We explained how the system supports manipulation of different encodings used in each visualization. For instance, we showed participants that they can drag the left or right boundary of a bar to manipulate its width. We then asked participants to perform an operation on the visualization. Depending on the visualization, we asked participants to: assign a data attribute to an axis of a scatterplot; sort a bar chart in a descending order; and expand the range of a bin in a histogram. For example, the interviewer asked the participants: 'How would you interact with this system to show that you are interested in sorting the bar chart in a descending order?' The interviewer's role in this phase was not to guide the participant, but solely to answer their questions. Such questions included: 'Am I supposed to show how I am going to do this task by manipulating these glyphs'? 'Should I assume that the system is going to detect my interaction?' The interviewer did not suggest participants strategies for performing the given operations, nor gave examples or hints on how to perform an operation.
- 3. Main study (~30 min). Participants familiarized themselves with the cars dataset like they had with the movies dataset. Then, they were shown a scatterplot, a bar chart, and a histogram created with the cars dataset, one at a time with the order randomized. For each visualization, they were asked to perform all operations associated with the visualization (see Table 1), one at a time in a random order. In total, each participant performed 15 operations ( 8 with the scatterplot + 6 with the bar chart + 1 with the histogram). For example, the interviewer asked the participants: 'How would you interact with this system to show that you are interested in changing the color of all points to red?' Participants were asked to perform each operation by only manipulating the graphical encodings in the visualization on the screen. Participants could also verbally explain how they would perform the operation when
- 4. Wrap-up (~5 min). The experimenter thanked the participants who received a $10 gift card. Participants were invited to ask additional questions about the study.

## 4.7 Data collection and Method of Analysis

We screen- and audio-recorded the study. During the main study, the experimenter took notes of participants' actions. We analyzed the 298 minutes of screen-capture videos using open coding [9] in three phases.

In the familiarization phase, two coders reviewed the videos together to identify common and unexpected patterns that informed our decision to focus the analysis on strategies. For example, they observed that participants came up with many more unique ways of switching the visualization from a scatterplot to a bar chart, than for other operations.

In the coding phase, once the two coders had a good understanding of the data, they agreed that strategies for performing operations were an appropriate lens through which to analyze the data and defined the 'intended strategies' as the unit of analysis. This meant that two types of information had to be coded for: which operation the participant is performing; and which intended strategy the participant either employs or suggests. An intended strategy is the expression of an intention that a participant performed physically and/or explained verbally to complete an operation. This definition allowed us to capture intended strategies that participants demonstrated using the prototype as well as those that they verbally explained, e.g., 'In that case, I would select the entire screen [all data points]. Then once they are in the same group of selection, I am assuming that increasing the size of one object should increase the size of all. ' To ensure a reliable coding process, both coders coded parts of a video together until they fully agreed on the coding. Then one coder went through all videos and coded both operations and intended strategies. The second coder then checked the coding for two randomly selected videos and confirmed the coding. In total 203 intended strategies were coded across all 15 operations.

In the analysis phase, both coders watched the video snippets of the 203 intended strategies to derive archetypal strategies . For each instance of intended strategy, they discussed whether it fell under any of the existing archetypal strategies or if it formed a new one. For every new archetypal strategy, the coders sketched a storyboard of it on paper. This process created 48 mutually exclusive archetypal strategies. The two coders further named each archetypal strategy based on its sketch. Figure 2 and Figure 3 summarize these 48 archetypal strategies (that we call 'strategies in the remainder of the paper).

We provide online 1 all relevant materials for this study: datasets, software for running the experiment, and sketches of the strategies employed by the participants.

Fig. 2. Each row is one of the 15 operations participants performed during the study, and each column is one of the 48 strategies we identified. Each cell shows the number of times participants used the strategy in column to perform the operation in row. The higher the value in a cell, the darker the background of the cell. Strategies are grouped based on the main encoding(s) involved in employing that strategy (second row in the table). For each strategy we color code the high-level approaches: exemplification, declaration, instrumentation and selection (fourth row in the table), detailed in the Discussion section. We provide detailed description of each strategy in Figure 3.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-ed4dc8aa-c841-4816-8213-be30dc3c4edb.jpg)

Fig. 3. Description of each of the 48 strategies participants used in our study.

|   ID | Strategy Name                 | Description                                                                                      |
|------|-------------------------------|--------------------------------------------------------------------------------------------------|
|    1 | Reposition a Few Points       | Rearrange a few points to sort them based on their values                                        |
|    2 | Stack Points Vertically       | Rearrange a few points to position them vertically where they have some overlaps                 |
|    3 | Reposition Points Vertically  | Rearrange a few points to position them vertically where they have no overlap                    |
|    4 | Regroup a Few Points          | Rearrange a few points to put them close together                                                |
|    5 | Reposition to Target          | Move a point to the target value                                                                 |
|    6 | Retop to Target               | Moving a bar so the top of the bar aligns with the target value                                  |
|    7 | Reposition to Tick Mark       | Move a point to the tick mark representing the target value                                      |
|    8 | Overlay Bars                  | Move one bar on the top of another bar so they overlay                                           |
|    9 | Sloping Bars                  | Move bars vertically to sort them based on their heights to create ascending or descending slope |
|   10 | Reposition Tallest & Shortest | Move the tallest bar to one extreme, then the shortest bar to another extreme                    |
|   11 | Stack two Bars                | Stack one bar on the top of another one                                                          |
|   12 | Reposition Bars by Height     | Move a few bars based on their heights                                                           |
|   13 | Resize a few Points Equally   | Resize a few points equally                                                                      |
|   14 | Resize & Reposition to Axis   | Resize a few points, then move them to the tick marks on the axis                                |
|   15 | Resize Point                  | Resize a point to the target value                                                               |
|   16 | Select & Resize               | Select a set of points and resize them                                                           |
|   17 | Resize by Values              | Resize a few data points differently based on their values                                       |
|   18 | Cover & Resize                | Make one point big to cover few other points                                                     |
|   19 | Recolor one Group             | Color few points that fall in the same range using the same color                                |
|   20 | Recolor Groups                | Color few points that fall in different ranges differently                                       |
|   21 | Select & Recolor One          | Select all points, then color one of them                                                        |
|   22 | Select & Recolor Group        | Select a set of points and color them                                                            |
|   23 | Recolor by Values             | Color a set of points based on their values                                                      |
|   24 | Recolor a Few Points          | Color a few points using the same color                                                          |

|   ID | Strategy Name                  | Description                                                                          |
|------|--------------------------------|--------------------------------------------------------------------------------------|
|   25 | Reposition & Resize            | Rearrange a few points to sort them based on their values, then resize them          |
|   26 | Stack & Enclose                | Rearrange a few points to stack them vertically, then resize a circle to enclose the |
|   27 | Reposition to Target & Resize  | stack Reposition a point to target value, then resize it                             |
|   28 | Resize & Move out              | Resize a point, then move it out of the visualization                                |
|   29 | Reposition Inline and Recolor  | Rearrange a few points vertically/horizontally, then color them                      |
|   30 | Reposition by Range & Recolor  | Rearrange a few points based on a range of values, then color them                   |
|   31 | Recolor, Reposition & Recolor  | Color a point, then move a second point to the target value and color it the same    |
|   32 | Reposition to Target & Recolor | color as the first point Move the point to the target value, then color it           |
|   33 | Regroup & Recolor              | Move a few points closer together, then color them                                   |
|   34 | Recolor & Paint                | Change the color of one data point, then move it over other points                   |
|   35 | Recolor & Dip                  | Color a point, then move other data points over it                                   |
|   36 | Resize a Point and Recolor     | Resize a single point, then color it                                                 |
|   37 | Resize & Recolor               | Resize points based on their values, then color them                                 |
|   38 | Cover & Recolor                | Make one point big to cover other points, then color it                              |
|   39 | Reheight Ascending             | Changing the height of the bar in an ascending order                                 |
|   40 | Reheight to Target             | Changing the height of the bar to the target vlaue                                   |
|   41 | Enwidth                        | Increase the width of the bar                                                        |
|   42 | Enheight & Enwidth             | Increase the height of the bar to exceed the x axis, then increase its width         |
|   43 | Reposition & Enwidth           | Drag two bars close together, then increase the width of one of the bars             |
|   44 | Recolor & Enwidth              | Color two bars and increase the width of one of the bars to cover all the other bars |
|   45 | Enwidth & Recolor              | Increase the width of the bar, then color it                                         |
|   46 | Enwidth & Cover                | Increase the width of a bar to cover all the other bars, then color it               |
|   47 | Intersect & Recolor            | Drag the bottom of the bar to intersect with the tick mark, then color it            |
|   48 | Recolor & Reheight             | Color the bar, then change its height to the target value                            |

## 5 RESULTS

Reposition a few Points Stack Points Vertically Reposition Points Vertically Regroup a few Points Reposition to Target Retop to Target Reposition to Tick Mark Overlay Bars Sloping Bars Reposition Tallest &amp; Shortest We present the strategies participants employed in our study to perform the operations using direct manipulation of graphical encodings. All but one participants could identify at least one strategy for each operation, with one participant failing to identify a strategy for one operation only. Participants suggested 4-5 strategies per operation on average. Most strategies are based on direct manipulation of the graphical encodings using well-known interaction patterns such as repositioning , resizing (that includes resizing the radius of points, the width of bars and the height of bars), and recoloring . A few strategies, however, rely on direct manipulation of other visualization elements such as axes, labels, and tick marks (participants verbally explained these strategies).

in Figure 2 (the exact phrasing used in our study for each operation i provided in Table 1). Below, for each operation we present the commonalities, variety, and unexpectedness of the strategies that participants employed. We provide raw sketches drawn during the video analysis procedure in supplemental materials. For simplicity, in this section we use 'points' to refer both to the data cases in the dataset and to the visual marks representing these data points in the scatterplot (circles in our study); we use 'bars' to refer to the visual marks representing data points or aggregations of data points in the bar chart and the histogram.

Stack two Bars Reposition Bars by Height We identified 48 unique strategies across the 15 operations, shown

Resize a few Points Equally

Assign a data attribute to an axis ( O 1 ), to the size of points ( O 8 ), and to the color of points ( O 10 ) or bars ( O 12 ). We grouped together these operations that are about assigning a data attribute to an encoding. Figure 4 shows the main strategies used for invoking these operations.

We identified four strategies that participants employed to assign a data attribute to a scatterplot axis ( O1 ). Seven participants used REPOSITION A FEW POINTS, where they rearranged a few points to sort them based on their values. This strategy has already been supported in previous work [37]. Three participants used REPOSITION &amp; RESIZE, where they first rearranged a few points to sort them horizontally and then resized them based on their values. Here they manipulated the size of points to express their intent to sort the points from lower to higher values. For example, after sorting and resizing the points, P2 said: 'So the size represents the horsepower, but at the same time the position is also horsepower. By the size [changing the size] I am trying to reinforce that the higher value should be on the right. '

One participant used REPOSITION INLINE &amp; RECOLOR, where he repositioned a few data points to sort them horizontally and then colored the points based on their values to inform the system about his thought process. He stated: 'I am coloring them just to show the system they have been sorted. ' Another participant also first repositioned a few data points to sort them based on the range that they fall in and then colored them (REPOSITION BY RANGE &amp; RECOLOR).

To assign a data attribute to the size of points in the scatterplot ( O8 ), seven participants used RESIZE BY VALUES, where they resized a few points based on their values. For example, P2 made smaller three points with a low value; then he made the point with the highest value bigger than all the other. Other participants used similar strategies: P1 resized a single random point (RESIZE POINT), and P2 and P8 first resized a few points based on their values before coloring them (RESIZE &amp; RECOLOR). One participant also said that he would first select all the points and then resize one of the selected points (SELECT &amp; RESIZE).

Most participants employed RECOLOR BY VALUES to assign a data attribute to color, both with the scatterplot ( O10 , 8 participants) and with the bar chart ( O12 , 10 participants). This strategy consists of coloring a few points/bars with different values using different colors. P5 suggested RECOLOR &amp; ENWIDTH with the bar chart, where he first colored two bars then increased the width of one of the bars to cover all the remaining bars. He explained: 'if I want to imply changes to be made to all bars, I drag the width of the bar. '

Switch from a scatterplot to a bar chart ( O 2 ). Figure 5 shows the four most used strategies to invoke this operation out of the eight we identified. Five participants used REPOSITION POINTS VERTICALLY, where they rearranged a few points to position them vertically without any overlap. Two used RECOLOR ONE GROUP, where they colored a few points that fall in a specific range using the same color.

Three used RESIZE &amp; REPOSITION TO AXIS, where they resized a few points then moved them to the tick marks shown on the axis. They explained that they consider each resized point to be a bar where the value is mapped to the radius of the circle instead of the height of the bar, e.g., 'this looks like the bar chart the bars are circular' (P5) and 'So basically each circle is a bar' (P2). Two participants used STACK POINTS VERTICALLY, where they rearranged a few points to position them vertically where they have some overlaps (i.e., stacking the points vertically similar to visualization by demonstration [37]).

Navigate a data point over time ( O 3 &amp; O 13 ). Figure 6 shows the main strategies used to check whether a data point has ever had a target value. With the scatterplot ( O3 ), five participants used REPOSITION TO TARGET, where they moved the point to the target value like in DimpVis [20]; five used RESIZE POINT, where they resized the data point; and four used REPOSITION TO TICK MARK, where they moved the point and dropped it on the tick mark representing the target value.

With the bar chart ( O13 ), nine used REHEIGHT TO TARGET, where they changed the height of the bar to the target value like in DimpVis [20]; one used RECOLOR &amp; REHEIGHT, where she first changed the height of the bar to the target value and then colored the bar; and four used RETOP TO TARGET, where they moved the bar vertically so that the top of the bar aligns with the target value.

Adjust the value of a point ( O 4 ) or a bar ( O 14 ). Figure 7 shows the most frequent strategies for these operations. Participants used four different strategies to adjust the value of a point in the scatterplot to a target value ( O4 ). Three used REPOSITION TO TARGET, where they

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-28a795e5-258e-4266-852b-be51988c6aed.jpg)

Fig. 4. Prominent strategies to assign a data attribute to an axis (first row); and to the size or color of points in the scatterplot, and of bars in the bar chart (second row).

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-978f9282-d634-4fc5-afa3-6c2c6bd8e779.jpg)

Fig. 5. Strategies to switch from scatterplot to bar chart.

Fig. 6. Strategies to navigate a data point over time.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-cf5f7d7e-1632-42ea-8e53-61d4eb8ef731.jpg)

Fig. 7. Four strategies to adjust the value of a point in a scatterplot and of a bar in a bar chart.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-a6458a2a-1b91-4388-9875-faa1d42d61b9.jpg)

moved the point to the target value, like in previous work [3]. Six participants extended this strategy by adding another step to it: four further colored the point (REPOSITION &amp; RECOLOR) and two other participants resized it (REPOSITION &amp; RESIZE).

To adjust the value of a bar in the bar chart ( O14 ), nine participants changed the height of the bar to the target value (REHEIGHT TO TARGET), like in previous work [3]. Two used RETOP TO TARGET, where they moved the bar so that the top of the bar aligns with the target value.

Group two bars into one bar ( O 5 ). Figure 8 shows the three strategies (out of four) used by more than one participant. Nine used OVERLAY BARS, where they dragged one bar on the other one, like this has been proposed in previous work [39]. Participants found this strategy to be intuitive, e.g., 'Is there an easier way to this question? There might be others but this seems like the most intuitive one' (P1). Two used STACK TWO BARS, where they stacked one bar on top of another, e.g., 'after grouping two bars, values of the two bars should add up' (P3). Here we use 'stack' to indicate the piling of visual marks on top of each other without overlap. Three participants used RECOLOR A FEW POINTS, where they colored the two bars using the same color.

Sort a bar chart ( O 6 ). Figure 9 shows three of the five strategies participants suggested to sort a bar chart in ascending order. Nine participants used REPOSITION BARS BY HEIGHT, where they moved a few bars based on their heights. For example, P1 stated: 'dragging two or three bars one after another should essentially indicate that I am rearranging them based on their values. ' Three participants used REPOSITION TALLEST &amp; SHORTEST, where they dragged the tallest bar to one extreme of the visualization and the shortest bar to another extreme, like in previous work [24,37]. Some of them felt that moving both tallest and shortest bars was not necessary. For instance, P3 said: 'I pick sedan which is the biggest one and put it on here [extreme right]. This makes sense and then the system should be able to pick up what I was trying to do. And maybe if you want to make it more sure, you pick up the lowest one also put it here [extreme left]. ' P6 used RECOLOR BY VALUES, where she colored three different bars with ordinal colors. She explained: 'keep the first one white, then make the second one yellow. So I am assuming this is the increasing order' (P6).

Change the size of all points ( O 7 ) or the color of all points ( O 9 ) / bars ( O 11 ). Figure 10 shows the main strategies participants used when asked to execute these operations.

There were two popular strategies to change the size of all circles in the scatterplot ( O7 ). Eight participants used RESIZE A FEW POINTS EQUALLY, where they resized two to four random points to make them equally bigger. For example, P2 stated: 'If I have to change the size of all of them [data points in scatterplot], then probably I should make a group of circles and they should not share the same axis, they should be very random.' Four suggested verbally SELECT &amp; RESIZE, that consists of selecting all circles and resizing one of them.

There were four main strategies to change the color of all points in the scatterplot ( O9 ) or bars in the barchart ( O11 ). Many participants used RECOLOR A FEW POINTS, where they recolored two to three points/bars using the same color (five did so with the scatterplot, seven with the bar chart). P1 and P6 used RECOLOR &amp; PAINT, where they colored one point/bar and dragged it over a few other points/bars. Similarly, P5 used RECOLOR &amp; DIP, where he first colored one point/bar, then dragged a few other points/bars such that they overlaid the colored point/bar. Finally, six participants mentioned that if selection was available they would use SELECT &amp; RECOLOR ONE, where they would first select all points/bars then color one of them.

Expand the range of a bin in a histogram ( O 15 ). Participants suggested five strategies to expand the range of a bin from one range to another range. Figure 11 shows three of these strategies.

Nine participants used ENWIDTH, where they increased the width of a bar to merge it with the bars next to it, as has been proposed in previous work [39]. P7 extended this strategy into ENWIDTH &amp; RECOLOR, where she first increased the width of the bar and then colored the bar yellow to inform the system about the latest updates: '[...] I colored the bar to show that it has been updated' (P7). Three participants used OVERLAY BARS, where they dragged and dropped the bins (bars) falling in the expected target range (e.g., the bars between 2008-2011) on top of each other such that they overlaid. P2 used RECOLOR A FEW POINTS, where he colored in the same color the bins that fell in the expected target range. P3 used ENHEIGHT &amp; ENWIDTH, where he first increased the height of the bar to exceed the x axis then increased its width to merge the bar with the bars next to it.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-5df11d3d-bd87-4682-a35b-dddcc53bae46.jpg)

Fig. 8. Three strategies to group two bars into one bar.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-28d689a9-9a7f-4eb6-bd15-655e124dc5cd.jpg)

Fig. 9. Three strategies to sort a bar chart.

Fig. 10. Strategies to change the size or color of all points in a scatterplot, and the color of all bars in a barchart.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-11ed9b90-afd1-45e2-b9b6-009bc6299413.jpg)

Fig. 11. Strategies to expand the range of a bin.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1908.00679v1-figure-f00fa34a-5da3-49ac-bf1d-ec011b94baf5.jpg)

## 6 DISCUSSION

We structure our discussion based on Figure 2, that presents the 48 strategies (in columns) participants used to perform the 15 operations O1 to O15 (in rows). We first discuss the varying degrees of agreement for strategies as well as conflicting strategies (strategies that participants used to perform different operations). Then, we propose four high-level approaches for organizing the 48 strategies: exemplification , declaration , instrumentation and selection . Last, we discuss limitations of our study and future research directions.

## 6.1 Varying Degrees of Agreement

Some strategies were widely adopted by participants for a given operation, i.e. they have a relatively high degree of agreement. For two thirds of the operations (10/15), one strategy represents more than 50% of the distribution of all used strategies. For example, among the 12 strategies that were proposed to assign a data attribute to the color of all bars, 10 employed RECOLOR BY VALUES (see O12 , strategy 23). As another example, among the 15 strategies participants proposed to expand the range of a bin in a histogram, 9 employed ENWIDTH (see O15 , strategy 41). On the other hand, some operations were performed using a wide range of strategies, with no consensus emerging. For example, to switch from a scatterplot to a bar chart (O2), participants used 8 different strategies. This suggests that it might be harder to identify common strategies for certain operations.

Findings from our empirical study show that users of visualizations can effectively employ direct manipulation of graphical encoding as a means of performing operations of varying complexity. However, the degree of agreement regarding which strategy to use varies from operation to operation. Going forward, visualization designers might consider incorporating strategies in consensus for performing operations using direct manipulation of graphical encodings. As such, our study provides a framework for collecting more empirical data and contributes to building a set of operations and corresponding consensual strategies.

## 6.2 Strategies in Conflict

Participants sometime employed the same strategy to perform different operations. For example, participants colored a few visual marks using the same color (RECOLOR A FEW POINTS) to perform a variety of operations including: to group two bars in one bar ( O5 , strategy 24); to change the color of all points in both the scatterplot ( O9 , strategy 24) and the bar chart ( O11 , strategy 24); and to expand the range of a bin in a histogram ( O15 , strategy 24).

The fact that participants used the same strategy to perform different operations, in a relatively open environment, is revealing in several ways. First, it suggests that the space of strategies for performing operations using direct manipulation of encodings is not as vast as it might look. Second, it indicates that there is often no single strategy that will be unanimously used to perform an operation. Third, it shows that some strategies can be consensual for performing different operations. That is the case for REHEIGHT TO TARGET, for example, which was used 9 times both to navigate the point over time in a bar chart ( O13 , strategy 40) and to adjust the value of a bar ( O14 , strategy 40).

This many to many relationship between strategies and operations raises technical challenges in leveraging direct manipulation of graphical encoding for user interaction. Visualization designers should in the first stage avoid implementing support for strategies that different people would use for performing different operations. Future work should explore recommending to the user all possible operations in response to an employed strategy so that the user can select the most appropriate operation (similar to VisExemplar [37]). Not only would this enable designers to support multiple operations, this could also be used to collect data on people's preferences towards developing an understanding of contextual strategies. In other words, collecting such data would enable us to analyze in which situations a given strategy is intended to trigger a particular operation.

## 6.3 Higher level Categorization of Strategies

By comparing the relations between strategies and operations, we identified four high-level approaches that participants used to manipulate encodings to invoke an operation (see Figure 2). Below we discuss these four high-level approaches: exemplification , declaration , instrumentation and selection .

Exemplification. With this approach, participants directly manipulated a small number of visual marks in order to illustrate by example the output they were trying to achieve. Participants widely used exemplification to invoke operations (e.g., see Rows 1-6 in Figure 2). Exemplification was mostly achieved through a repetitive set of actions to show the system how a part of the visual output should look like. For instance, one of the strategies that participants used to sort the bar chart is REPOSITION BARS BY HEIGHT (strategy 12). With this strategy, they positioned a few bars one by one in an ascending order similar to how the bar chart should look like after sorting. In another example, one of the strategies that participants used to change the color of all data points is RECOLOR A FEW POINTS (strategy 24). With this strategy, participants colored only a subset of points using the same color to demonstrate their higher-level goal of changing the color of all data points. The idea behind exemplification is similar to the visualization by demonstration paradigm [37]. In visualization by demonstration, one of the methods to provide visual demonstrations is to directly manipulate the graphical encodings used in the visualization to indicate a part of the expected visual output to the system.

Declaration. With this approach, participants manipulated a graphical encoding different from the primary graphical encoding used in the operation. For example, when we asked to assign a data attribute to an axis of a scatterplot ( O10 ), we expected participants to mainly rely on positioning data points manually based on their values for that data attribute, since switching the axis results in changes in how points are positioned. However some participants manipulated encodings that were not directly linked to assigning a data attribute to the axis. One participant used REPOSITION INLINE AND RECOLOR (strategy 29), where they first rearranged a few points vertically/horizontally, then colored them. While repositioning a few points is directly related to mapping a data attribute to position , coloring the points is not directly related to creating such a mapping. In this case, participants used color as a way to communicate their intention to the system. Another participant used ENWIDTH &amp; RECOLOR to expand the range of a bin in a histogram ( O15 ). While color is not directly related to how ranges in histograms are represented, the participant colored the bar as a way to inform the system about the latest changes they had made. Another participant used RECOLOR BY VALUES to sort the bar chart. Here, while the primary graphical encodings related to the sort operation are the height and the position of bars, the participant expressed the notion of order using an ordinal color scheme.

Instrumentation. With this approach, participants used a visual mark as an instrument (or tool). This resulted in relatively advanced and unexpected strategies. For example, two participants used RECOLOR AND PAINT to change the color of all points ( O9 ) and bars ( O11 ). They first colored a point/bar and then used this colored visual mark as a brush: they dragged it over other points/bars to color them. Similarly, two other participants used RECOLOR AND DIP to perform these two same operations ( O9 and O11 ), but the other way around. They first colored a point/bar and then used this colored visual mark as a bucket: they dragged a few other points/bars such that they overlaid the colored point/bar. To turn a visual mark into an instrument, participants used the graphical encodings color (strategies 34 and 35) and size (strategies 18, 38 and 46). The idea behind instrumentation is similar to what has been proposed with constructible interfaces [25], a paradigm that is strongly grounded into instrumental interaction [4]. In constructible interfaces, one of the methods to create or modify visual marks is to turn other visual marks into instruments that can be used to perform operations [25].

Selection. With this approach, participants expressed their interest in a selection technique (verbally because selection was not supported in the prototype). They explained that they would prefer having access to a selection option that they could use to select a subset of points. Then they would apply an operation to a single data point rather than having to apply the same operation to multiple points. For example, participants used SELECT &amp; RECOLOR ONE to change the color of all points in both the scatterplot and the bar chart.

Differences in approaches in terms of visual marks. We can further differentiate these four approaches according to the number of visual marks they require one to manipulate. Participants sometimes thought of strategies that relied on direct manipulation of three or more graphical encodings. In such cases, participants thought of instrumentation and selection approaches because these approaches enabled them to perform repetitive actions rapidly (instead of manipulating different visual marks one by one). For example, when asked to change the size of all data points, some participants mentioned that resizing every single point might be tedious. Thus, they suggested SELECT &amp; RESIZE where they would select a subset of points and resize them all at once rather than resizing each point individually. On the other hand, participants used instrumentation and selection less often when their strategies required them to change one or two visual marks. It suggests that the number of marks to directly manipulate to perform an operation informs which high-level approach to use.

## 6.4 Types of Encodings Used for Performing an Operation

We initially hypothesized that participants would manipulate multiple encodings while employing their strategies. For example, we thought participants would manipulate a variety of encodings such as color, size, and height of the bars while applying their strategies to sort a bar chart. However, our results show that a majority of strategies often rely on manipulating a single type of graphical encoding. For instance, for 13 out of the 15 strategies employed to sort a bar chart, participants only manipulated the position of the bars. Similarly, 13 out of the 14 strategies employed to map a data attribute to the size encoding, participants only manipulated the size of the data points.

This indicates that users of visualizations can effectively employ direct manipulation of graphical encoding as a means of performing operations, and that the mechanisms people might use to manipulate graphical encodings is not as complex and wide as one could expect. These findings can also help tool designers decide whether to implement direct manipulation of only one, or of multiple encodings in a tool according to the operations the tool must support.

## 6.5 Limitations

This qualitative study is the first attempt to understand how people manipulate graphical encodings to invoke different visualization operations. As such, it cannot answer all open questions related to this problem; here we discuss the limitations of our study and findings.

Prototype Functionality. Our findings must be interpreted in the context of the study prototype. To investigate how people directly manipulate graphical encodings to perform operations, we had to first design a tool that supports such functionality. Many participants explained strategies that were not supported by the prototype. This shows that participants thought about strategies beyond the implemented interactions, as we had hypothesized. However, it is likely that the limited functionality of our study software has impacted their strategies. Building on our findings, future studies should consider including some of the functionality suggested by our participants, such as the ability to select data points. This will allow participants to express more diverse strategies and broaden the palette of possible ways of performing visualization operations through direct manipulation of graphical encodings.

Operation Description. Although we kept the description of the operations as close as possible to previous work, the phrasing of the questions can influence the strategies employed by participants. Moreover, the nature of the operations differ from one another. For example, some operations are more direct in how they refer to the changes that need to be made on the visual marks (i.e., the questions are congruent [6] to the task to achieve). Despite this limitation, we observed a multiplicity of strategies for all operations.

## 6.6 Generalizability and Future Work

Our qualitative study provides rich and detailed results; however this study does not aim at generalization. Testing our research questions using other visualization techniques and operations might reveal nuances of direct manipulation of graphical encodings that were not tested in this study. One of the next steps will be to build on our findings to study how people perform and perceive a large set of operations and strategies via a crowdsourced study in order to gather more quantitative data and aim for more generalizable results.

In this study, we investigated how people perform different operations using direct manipulation of encodings. We aim to extend our study by investigating how people understand this method for user interaction. For example, we plan to conduct a study where we show videos of user interactions from this study to Amazon Mechanical Turk workers and ask them to list potential operations they think the person in the video is trying to perform. We expect that after collecting such data, we will be able to design machine learning models that predict people's intended operations based on the strategies they employ.

The prototype used in our study only enabled participants to manipulate the visual marks and their graphical encodings - it did not react to participants actions (similar to a drawing interface like Adobe Illustrator). Enabling participants to convey their actions without the system reacting to those actions enabled us to observe participants unrevised behavior in isolation. However, a setup in which the system would react to participants' actions for performing an operation might influence strategies employed by the participants. Specifically, if the system responds to each individual action then accurate predictions of operations may shorten strategies employed by the participants. We envision conducting a Wizard of Oz experiment in which we will provide different types of feedback as participants manipulate the encodings to perform an operation. This will help us understand how the reaction of the system influences the strategies employed by participants.

Today, visualization tools incorporate multimodal interactions to enhance user experience and system usability [2]. For instance, earlier work on natural language interfaces for visualization indicated potential value in combining direct manipulation and natural language as complementary interaction techniques [40]. Exploring how direct manipulation of graphical encodings combines and complement other input modalities such as natural language, body posture, and gestural interaction is an exciting avenue for future research.

Interactivity in many visualizations has been, and is, supported through WIMP widgets. These tools are successful in easing the processes of visualization construction, because they allow users to interactively construct visualizations instead of using programming and are fully discoverable. However, when other forms of interaction such as direct manipulation of graphical encodings are leveraged, it raises a number of important questions [36] including: How effective are different forms of interaction (e.g., WIMP vs. direct manipulation) for specific operations? How can we design tools that effectively leverage several forms of interaction? Understanding the differences and tradeoffs between various forms of interactions and how they are used for specific operations will help designers and developers make informed interaction design decisions when creating visualization tools.

## 7 CONCLUSIONS

Designing visualizations that leverage the direct manipulation of graphical encodings as a means for user interaction is challenging because we lack a holistic understanding of which actions should be supported and what are their associated operations. To date, such systems rely on designer-generated heuristics to create these mappings. This paper provides the first list of strategies, sometimes consensual and sometimes conflicting, that people employ to perform operations using direct manipulation of graphical encodings. We organized the strategies into four high-level approaches: exemplification , declaration , instrumentation , and selection . This work provides a framework for collecting more empirical data and contribute towards developing an holistic understanding of the strategies people employ to perform certain operations.

## ACKNOWLEDGMENTS

We are grateful to the study participants, reviewers, and members of the Georgia Tech Visualization Lab for their helpful insights and comments. This project is supported by NSF IIS-1750474 and the Natural Sciences and Engineering Research Council of Canada (NSERC).

## REFERENCES

- [1] Tableau datasets, https://public.tableau.com/s/resources, 2015.
- [2] S. K. Badam, A. Srinivasan, N. Elmqvist, and J. Stasko. Affordances of input modalities for visual data exploration in immersive environments. In 2nd Workshop on Immersive Analytics , 2017.
- [3] T. Baudel. From information visualization to direct manipulation: Extending a generic visualization framework for the interactive editing of large datasets. In Proceedings of the 19th Annual ACM Symposium on User Interface Software and Technology , UIST '06, pp. 67-76. ACM, New York, NY, USA, 2006.
- [4] M. Beaudouin-Lafon. Instrumental interaction: an interaction model for designing post-wimp user interfaces. In Proceedings of the SIGCHI conference on Human Factors in Computing Systems , pp. 446-453. ACM, 2000.
- [5] M. Bostock, V. Ogievetsky, and J. Heer. D 3 : Data-driven documents. IEEE Trans. Visualization &amp; Comp. Graphics , 17(12):2301-2309, 2011.
- [6] J. Boy, R. A. Rensink, E. Bertini, and J.-D. Fekete. A principled way of assessing visualization literacy. IEEE Transactions on Visualization &amp; Computer Graphics , 20(12):1963-1972, 2014.
- [7] F. Chevalier, P. Dragicevic, and C. Hurter. Histomages: fully synchronized views for image editing. In Proceedings of the 25th annual ACM symposium on User interface software and technology , pp. 281-286. ACM, 2012.
- [8] J. W. Creswell. Qualitative inquiry and research design: Choosing among five tradition, 1998.
- [9] J. W. Creswell. Educational research: Planning, conducting, and evaluating quantitative . Prentice Hall Upper Saddle River, NJ, 2002.
- [10] M. desJardins, J. MacGlashan, and J. Ferraioli. Interactive visual clustering. In Proceedings of the 12th International Conference on Intelligent User Interfaces , IUI '07, pp. 361-364. ACM, New York, NY, USA, 2007.
- [11] B. T. Eli, J. Liu, C. E. Brodley, and R. Chang. Dis-function: Learning distance functions interactively. In 2012 IEEE Conference on Visual Analytics Science and Technology (VAST) , pp. 83-92, Oct 2012.
- [12] N. Elmqvist, A. Vande Moere, H.-C. Jetter, D. Cernea, H. Reiterer, and T. J. Jankun-Kelly. Fluid interaction for information visualization. Information Visualization , 10(4):327-340, Oct. 2011.
- [13] A. Endert, P. Fiaux, and C. North. Semantic interaction for visual text analytics. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems , CHI '12, pp. 473-482. ACM, New York, NY, USA, 2012. doi: 10.1145/2207676.2207741
- [14] S. Few. Now you see it: simple visualization techniques for quantitative analysis . Analytics Press, 2009.
- [15] H. V. Henderson and P. F. Velleman. Building multiple regression models interactively. Biometrics , pp. 391-411, 1981.
- [16] S. Huron, Y. Jansen, and S. Carpendale. Constructing visual representations: Investigating the use of tangible tokens. IEEE Transactions on Visualization and Computer Graphics , 20(12):2102-2111, Dec 2014.
- [17] E. L. Hutchins, J. D. Hollan, and D. A. Norman. Direct manipulation interfaces. Human-Computer Interaction , 1(4):311-338, 1985.
- [18] H. Kim, J. Choo, H. Park, and A. Endert. Interaxis: Steering scatterplot axes via observation-level interaction. IEEE transactions on visualization and computer graphics , 22(1):131-140, 2016.
- [19] N. W. Kim, E. Schweickart, Z. Liu, M. Dontcheva, W. Li, J. Popovic, and H. Pfister. Data-Driven Guides: Supporting Expressive Design for Information Graphics. IEEE Transactions on Visualization and Computer Graphics , 23(1):491-500, Jan 2017. doi: 10.1109/TVCG.2016.2598620
- [20] B. Kondo and C. Collins. Dimpvis: Exploring time-varying information visualizations by direct manipulation. IEEE Transactions on Visualization and Computer Graphics , 20(12):2003-2012, Dec 2014.
- [21] B. c. Kwon, W. Javed, N. Elmqvist, and J. S. Yi. Direct manipulation through surrogate objects. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems , CHI '11, pp. 627-636. ACM, New York, NY, USA, 2011.
- [22] B. Lee, P. Isenberg, N. H. Riche, and S. Carpendale. Beyond mouse and keyboard: Expanding design considerations for information visualization interactions. IEEE Transactions on Visualization and Computer Graphics , 18(12):2689-2698, Dec. 2012.
- [23] Z. Liu, J. Thompson, A. Wilson, M. Dontcheva, J. Delorey, S. Grigg, B. Kerr, and J. Stasko. Data Illustrator: Augmenting Vector Design Tools with Lazy Data Binding for Expressive Visualization Authoring. In Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems , CHI '18, pp. 123:1-123:13. ACM, New York, NY, USA, 2018.
- [24] D. Maulsby and I. H. Witten. Watch what i do. chap. Metamouse: An Instructible Agent for Programming by Demonstration, pp. 155-181. MIT Press, Cambridge, MA, USA, 1993.
- [25] G. M´ endez, J. Walny, S. Knudsen, C. Perin, S. Huron, J. Vermeulen, R. Pusch, and S. Carpendale. Reconstructor: A scalable constructive visualization tool, 2019. arXiv preprint .
- [26] G. G. M´ endez, M. A. Nacenta, and S. Vandenheste. iVoLVER: Interactive Visual Language for Visualization Extraction and Reconstruction. In Proceedings of the CHI Conference on Human Factors in Computing Systems , CHI '16, pp. 4073-4085. ACM, New York, NY, USA, 2016.
- [27] J. M. Morse. Determining sample size, 2000.
- [28] C. Perin. Direct Manipulation for Information Visualization . PhD thesis, Paris 11, 2014.
- [29] C. Perin and P. Dragicevic. Manipulating multiple sliders by crossing. In Proceedings of the 26th Conference on L'Interaction Homme-Machine ,
- IHM '14, pp. 48-54. ACM, New York, NY, USA, 2014.
- [30] C. Perin, P. Dragicevic, and J. D. Fekete. Revisiting bertin matrices: New interactions for crafting tabular visualizations. IEEE Transactions on Visualization and Computer Graphics , 20(12):2082-2091, Dec 2014.
- [31] C. Perin, R. Vuillemot, and J.-D. Fekete. A table!: Improving temporal navigation in soccer ranking tables. In Proceedings of the 32Nd Annual ACM Conference on Human Factors in Computing Systems , CHI '14, pp. 887-896. ACM, New York, NY, USA, 2014.
- [32] D. Ren, H. Tobias, and X. Yuan. ivisdesigner: Expressive interactive design of information visualizations. IEEE Transactions on Visualization and Computer Graphics , 20(12):2092-2101, Dec 2014.
- [33] N. H. Riche, B. Lee, and C. Plaisant. Understanding interactive legends: a comparative evaluation with standard widgets. In Computer graphics forum , vol. 29, pp. 1193-1202. Wiley Online Library, 2010.
- [34] B. Saket and A. Endert. Demonstrational interaction for data visualization. IEEE Computer Graphics and Applications , 39(3):67-72, May 2019. doi: 10.1109/MCG.2019.2903711
- [35] B. Saket and A. Endert. Investigating the manual view specification and visualization by demonstration paradigms for visualization construction. Computer Graphics Forum , 2019. doi: 10.1111/cgf.13718
- [36] B. Saket, L. Jiang, C. Perin, and A. Endert. Liger: Combining interaction paradigms for visual analysis, 2019. arXiv preprint 1907.08345.
- [37] B. Saket, H. Kim, E. T. Brown, and A. Endert. Visualization by demonstration: An interaction paradigm for visual data exploration. IEEE Transactions on Visualization and Computer Graphics , 23(1):331-340, Jan 2017.
- [38] B. Saket, A. Srinivasan, E. D. Ragan, and A. Endert. Evaluating interactive graphical encodings for data visualization. IEEE Transactions on Visualization and Computer Graphics , 24(3):1316-1330, 2018.
- [39] A. Sarvghad, B. Saket, A. Endert, and N. Weibel. Embedded merge amp; split: Visual adjustment of data grouping. IEEE Transactions on Visualization and Computer Graphics , 25(1):800-809, Jan 2019.
- [40] V. Setlur, S. E. Battersby, M. Tory, R. Gossweiler, and A. X. Chang. Eviza: Anatural language interface for visual analysis. In Proceedings of the 29th Annual Symposium on User Interface Software and Technology , UIST '16, pp. 365-377. ACM, New York, NY, USA, 2016.
- [41] B. Shneiderman. Direct manipulation: a step beyond programming languages. Sparks of innovation in human-computer interaction , 17:1993, 1993.
- [42] H. Siirtola. Interaction with the reorderable matrix. In In International Conference on Information Visualization (Cat. No. PR00210) , pp. 272277, 1999.
- [43] R. S. Torres, C. G. Silva, C. B. Medeiros, and H. V. Rocha. Visual structures for image browsing. In Proceedings of the twelfth international conference on Information and knowledge management , pp. 49-55. ACM, 2003.
- [44] R. Vuillemot and C. Perin. Investigating the direct manipulation of ranking tables for time navigation. In Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems , CHI '15, pp. 27032706. ACM, New York, NY, USA, 2015. doi: 10.1145/2702123.2702237
- [45] R. Vuillemot and C. Perin. Sports tournament predictions using direct manipulation. IEEE Computer Graphics and Applications , 36(5):62-71, Sept 2016. doi: 10.1109/MCG.2016.90
- [46] E. Wall, S. Das, R. Chawla, B. Kalidindi, E. T. Brown, and A. Endert. Podium: Ranking data using mixed-initiative visual analytics. IEEE Transactions on Visualization and Computer Graphics , 24(1):288-297, Jan 2018.
- [47] J. Wenskovitch, I. Crandell, N. Ramakrishnan, L. House, S. Leman, and C. North. Towards a systematic combination of dimension reduction and clustering in visual analytics. IEEE Transactions on Visualization and Computer Graphics , 24(1):131-141, Jan 2018.
Bahador Saket Samuel Huron Charles Perin Alex Endert
Investigating Direct Manipulation of Graphical Encodings as a Method for User Interaction
We investigate direct manipulation of graphical encodings as a method for
interacting with visualizations. There is an increasing interest in developing
visualization tools that enable users to perform operations by directly
manipulating graphical encodings rather than external widgets such as
checkboxes and sliders. Designers of such tools must decide which direct
manipulation operations should be supported, and identify how each operation
can be invoked. However, we lack empirical guidelines for how people convey
their intended operations using direct manipulation of graphical encodings. We
address this issue by conducting a qualitative study that examines how
participants perform 15 operations using direct manipulation of standard
graphical encodings. From this study, we 1) identify a list of strategies
people employ to perform each operation, 2) observe commonalities in strategies
across operations, and 3) derive implications to help designers leverage direct
manipulation of graphical encoding as a method for user interaction.