27Comparison of Techniques ParCood: <1000 items, <20 attrsRelate between adjacent attr pairsStarCoord: <1,000,000 items, <20 attrsInteraction intensiveTableLens: similar to par-coordsmore items with aggregationRelate 1:m attrs (sorting), short learn timeVisdb: 100,000 items with 10 attrsItems*attrs = screenspace, long learn time, must querySpotfire: <1,000,000 items, <10 attrs (DQ many)Filtering, short learn time
28Multi-Dimensional Functions cs5764: Information VisualizationChris North
29Multi-Dimensional Functions y = f(x1, x2, x3, …, xn)Continuous:E.g. y = x13 + 2x22 - 9x3Discrete:xi are uniformly sampled in a bounded regionE.g. xi = [0,1,2,…,100]E.g. measured density in a 3D material under range of pressures and room temperatures.
30Relations vs. Functions R(A, B, C, D, E, F)All dependent variables (1 ind.var.?)Sparse points in multi-d dep.var. spaceFunctions:R(A, B, C, D, E, F, Y) : Y=f(A, B, C, D, E, F)Many independent variablesDefined at every point in multi-d ind.var. space (“onto”)Huge scale: 6D with 10 samples/D = 1,000,000 data points
31Multi-D Relation Visualizations… Don’t work well for multi-D functionsExample:Parallel coords5D func sampled on 1-9 for all ind.vars.
32Typically want to encode ind.vars. as spatial attrs
363-D: Hard d = f(a, b, c) Color volume: a x b y c z d color What’s inside?cba
374D: Really Hard y = f(x1, x2, x3, x4, …, xn) What does a 5D space look like?Approaches:Hierarchical axes (Mihalisin)Nested coordinate frames (Worlds within Worlds)Slicing (HyperSlice)Radial Focus+Context (PolarEyez, Sanjini)
38Hierarchical Axes 1D view of 3D function: (Mihalisin et al.) f(x1, x2, x3)x3x2x1
48Comparison Hierarchical axes (Mihalisin): < 6d by 10 samples, ALL slices, view 2d at a timeNested coordinate frames (Worlds in Worlds)< 5-8d, continuous, no overview, 3d hardwareSlicing (HyperSlice):< 10d by 100 samples, 2d slicesRadial Focus+Context (PolarEyez)< 10d by 1000 samples, overview, all D uniform, rays
49cs5764: Information Visualization Chris North Dynamic Queriescs5764: Information VisualizationChris North
53erases items underneath too DQ AlgorithmIdea: incremental algorithmonly deal with data items that changed stateWhen slider moves:Calculate slider deltaSearch in data structure for data items in the delta regionIf slider moved inward (filter out):Erase data items from visualizationElse slider moved outward (filter in):Draw data items on visualizationProblem!Overlapped items,erases items underneath too
54DQ Data Structures (1) Sorted array of the data for each slider Need counter for each data item = # sliders that filter itAttribute Explorer visualizes these counters too!O(delta)Year:Delta
55DQ Data Structures (2) Multi-dimensional data structure E.g.: K-d tree, quad-tree, …Recursively split space, store in tree structureEnables fast range search, O()
56DQ Data Structures (2) Multi-dimensional data structure E.g.: K-d tree, quad-tree, …Recursively split space, store in tree structureEnables fast range search, O(logn)Delta
57Erasure Problem Each pixel has counter = number of items Z-buffer? Can visualize this for density!Z-buffer?Redraw local area only