Skip to content

Instantly share code, notes, and snippets.

@alex-r-bigelow
Last active April 26, 2019 05:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save alex-r-bigelow/e09353fc9871ec55eae53dc6c8cda3ca to your computer and use it in GitHub Desktop.
Save alex-r-bigelow/e09353fc9871ec55eae53dc6c8cda3ca to your computer and use it in GitHub Desktop.
Dissertation outline

Overview

  • Key takeaway: Iteration is a ubiquitous need across many different visualization design workflows.

  • By "iteration," I'm referring to context switches in the design process—this can happen with respect to what you are currently changing in the vis design...

    • such as iterating between editing the graphics of a visualization, and its underlying data as well as how you are making changes
    • such as generating graphics automatically by writing code, and then editing them manually with a drawing tool I'm going to refer to these different ways of working as "modalities"
  • For visual design, practitioners often need to iterate between modalities; however, free-form iteration between modalities is difficult or impossible with existing software.

  • A similar challenge exists with respect to what we're editing, especially at the data level. We learn as we design, and learning that we need to change how we've been thinking about and structuring the data is pretty common. However, many data reshaping operations---particularly network wrangling operations---have support only in programming environments that may not be accessible to many visualization designers.

  • In this dissertation, we explore software and software models to make each of these kinds of iteration more feasible.

AVI

  • The need for better support for iteration was inspired by seeing things that suggest that graphic designers follow a process that is distinct from our own as visualization programmers
  • (pie charts)
  • This isn't an isolated incident—we see things like this all the time in infographics and the media, and while we can feel smug and blame the human all we want, we wanted to figure out why. The tools that the visualization community produces that would prevent things like this... don't really get much use, especially among graphic designers.
  • To better understand these issues, we conducted interviews, lab studies, and observations of graphic designers working with data
    • Manual encoding has its benefits
    • Placing data on existing graphics
    • Tools for creating effective data abstractions*
    • Relax the sequence of operations that software imposes*
      • Jim? Chris? quote

Transition to Bridge Model

Bridge Model

  • (Pattern from AVI: Using automation still resulted in manual work)
    • Bang's figure + quote
    • Isabel's figure + quote
  • What if you could go back and forth, minimizing loss? (define bridge)
  • Contributions:
    • Bridge Model enables transitions between tools
    • Outline the design space of strategies for software bridges
    • Hanpuku: instantiation of a bridge between D3 and Illustrator
  • Hanpuku
    • Interface intro (skateboard championship)
  • How to make this work?
  • Model + gist of how it works (circle diagram)
    • Generative tool vs drawing tool changes
    • Non-transferrable elements
  • Design space:
    • How does a bridge identify what changed in each tool?
    • How does a bridge merge the identified changes?
    • How does a bridge reintegrate the merged results?
    • How does a bridge infer designer intent?
  • Hanpuku's strategies:
    • Identifying changes (talk about data binding)
    • Merge strategies (two merges; override based on direction)
    • Reintegrating results (D3 wasn't an accident)
    • Inferring intent (both support grouping)
  • Key insight: recast the serial iteration problem as a parallel merge

Transition to Jacob's Ladder

  • We've shown how iteration can be possible w.r.t. graphics... what about the data itself?
  • Data abstraction is part of a vis design
    • Chris AVI quote
    • Benefits of working with data: Time travel dataset / experiment intro
      • Outliner
      • Repeated films
    • Dangers of accepting the data as-is: HBO dataset (walkthrough!) + tabular charts
      • "I feel like I'm stuck in this treemap world"
  • We don't have good tools for iterating on data abstractions, esp. w.r.t. complex data like graphs

Jacob's Ladder

  • So what might graph wrangling look like? One operation: extracting subgraphs
  • What we mean by pivots (simple definition)
  • Why pivots + filters?
    • General-purpose exploration technique
    • Companion to the data wrangling process
    • Extract manageable subgraphs
  • Tool demo
    • Using NCAA data
    • Interface walkthrough (don't include inability to pivot to all teams)
  • Evaluation goals
    • Can pivots + filters enable novice users to extract subsets of a large graph? (without an instance-level topology view?)
    • How does the technique obscure the overall network model of the database?
    • Does the user understand the scope of the next pivot?
  • Participants & methods
    • Mix of grad students and football fans
    • Unstructured interviews
  • What we learned
    • Smart pivot heuristic
    • Learning from pivot + filter chains
      • Rich semantic meaning, conveniently encoded
      • Data-informed smart pivots?
      • Automatic data wrangling?
        • Infer new edges / attributes
    • When are other views needed?
      • Local topology not needed for many tasks
      • Model topology important as a roadmap

Transition to Origraph

  • Pivoting + filtering wrapped up as Connectivity-based filtering

Origraph

  • What other operations are there?
    • Modeling Operations
      • Connecting / disconnecting
      • Promoting attributes
      • Faceting
      • Converting between nodes and edges
      • Edge projection
      • Creating supernodes
      • Rolling up edges
    • Item Operations
      • Filtering by attributes
      • Connectivity-based filtering
    • Attribute Operations
      • Deriving in-class attributes
      • Connectivity-based attribute derivation
      • Changing edge directionality
  • Interface design
    • Three main views
      • What the network model view affords
      • What the attribute tables afford
      • What the sample view affords
    • Operation-specific views
      • Connect interface
        • Connectivity heuristic
      • Attribute derivation / filter interface
        • Note the (backwards) Jacob's Ladder breadcrumb
    • Implementation: underlying library
      • Table layer, interpretation layer
    • Use Cases:
      • Gender Bias in Movies
        • Intro to data sources
        • Walk through each of the steps

Discussion

  • Remaining gaps
    • Software gaps
      • We only covered two of our AVI opportunities (others have started in on the other two)
      • Room for new tools / improvements on existing tools in all four categories
        • Hypothetical bridges
        • Adaptive edges + attributes
        • Origraph scalability
    • Interaction modality gaps
      • Evaluating more than expressiveness (Ren's categories)
      • Which modality is best for which task? Ways to transition between modalities?
    • Workflow gaps
      • More we can learn from designers: design activities
      • Other workflows we can learn from: math / CS people / data scientists: wrangling operations, provenance

Conclusion slide

  • Key takeaway: Iteration is a ubiquitous need across many different visualization design workflows.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment