Magic Lenses for Interactive Database Visualization Ken Fishkin
Magic Lenses for Interactive Database Visualization Ken Fishkin Soft. Book Press, Inc. Magic Lenses - Ken Fishkin - Nov. 2000
Standard WIMP all windows are opaque, self-contained n exception: zoom lenses are nice n Magic Lenses - Ken Fishkin - Nov. 2000 2
Magic Lenses are Windows which know about what’s below them, and/or what’s above them. n They can alter input, output, or both. n They can be composed n Magic Lenses - Ken Fishkin - Nov. 2000 3
Magic Lenses - click through n wouldn’t it be nice if I could “click through” a zoom lens? Magic Lenses - Ken Fishkin - Nov. 2000 4
Magic Lenses - composable n and even nicer if they could compose? Magic Lenses - Ken Fishkin - Nov. 2000 5
Magic Lenses - semantic n and even nicer if they could be nongraphical? Magic Lenses - Ken Fishkin - Nov. 2000 6
Magic Lenses - inter-app n And even nicer if semantics were F(other windows)? Magic Lenses - Ken Fishkin - Nov. 2000 7
To Recap Magic Lenses are Windows which know about what’s below them, and/or what’s above them. n They can alter input, output, or both. n They can be composed n 3 D possible n Magic Lenses - Ken Fishkin - Nov. 2000 8
Overall flow (many) Magic Lenses - Ken Fishkin - Nov. 2000 9
How do you implement it? n Purely graphical lenses u “trap” calls to event manager (input), graphics engine (output) n Semantic lenses u shared n data, and/or protocol for passing objects Speed a big issue u lots and lots of caching Magic Lenses - Ken Fishkin - Nov. 2000 10
What This Buys You n Multiple foci + context Magic Lenses - Ken Fishkin - Nov. 2000 11
“Reify” modes into objects Magic Lenses - Ken Fishkin - Nov. 2000 12
Composability gives you “spatial Unix pipes”. n Let’s use it for data visualization. . . Magic Lenses - Ken Fishkin - Nov. 2000 13
Traditional Database Queries n Use a Special Language u select title from movies where lead_actor=‘Connery, Sean’ and (year < 1960 or year > 1975) n Batch, non-visual Magic Lenses - Ken Fishkin - Nov. 2000 14
Visual Representation of Databases Map each record to a point on the plane n Since 1854 (at least) n Magic Lenses - Ken Fishkin - Nov. 2000 15
Dynamic Queries (example 1) n Magic Lenses - Ken Fishkin - Nov. 2000 One selector per attribute 16
Dynamic Queries (example 2) n Magic Lenses - Ken Fishkin - Nov. 2000 Selectors filter the display 17
Dynamic Queries (limitations) designed for a small number of attributes n only global filters n can’t screen on an attribute more than once n no disjunctions n limited query set n Magic Lenses - Ken Fishkin - Nov. 2000 18
Hybrid Techniques language for ‘leaves’ of the query, n visual interface for compound queries n Still not all queries supported n Content Date Content Contains is before contains Document Management 05/01/94 Visual Recall OS Magic Lenses - Ken Fishkin - Nov. 2000 And Or 19
Magic Lenses n Movable local filters, which transform the data underneath them in some way, be it visual (magnifying lens), semantic (misspelled words), or other Magic Lenses - Ken Fishkin - Nov. 2000 20
Merging Lenses into Queries n Put one attribute selector on a lens. Magic Lenses - Ken Fishkin - Nov. 2000 21
Free Wins(1) - local filters Magic Lenses - Ken Fishkin - Nov. 2000 22
#2 - repeated attributes Magic Lenses - Ken Fishkin - Nov. 2000 23
#3 - arbitrary number of attrs. n Just stack ‘em up. Magic Lenses - Ken Fishkin - Nov. 2000 24
Consistent UI Magic Lenses - Ken Fishkin - Nov. 2000 25
Query Power 2. 5 D order of windows implies a composition/evaluation order n Put an AND/OR toggle on the lens to indicate how it should compose: n u. A AND B --> <A, AND> above <B> u A OR B --> <A, OR> above <B> Magic Lenses - Ken Fishkin - Nov. 2000 26
And/or in action Magic Lenses - Ken Fishkin - Nov. 2000 27
Query Power(2) n NOT gets its own lens u. A AND NOT (B OR C) F <A, AND> F <NOT> F <B, OR> F <C> Magic Lenses - Ken Fishkin - Nov. 2000 28
Grouping Introduce compound (grouped) lenses n Allows parenthesizing n allows macros n Conjunction + Negation + Grouping ==> support for arbitrary Boolean queries n Magic Lenses - Ken Fishkin - Nov. 2000 29
Extensions No need to have just ‘AND’ and ‘OR’ could have any/all of the 16 possible combinations. n Could just have a ‘NAND’ mode, but that would be non-intuitive. And/Or/Not are most common. n Magic Lenses - Ken Fishkin - Nov. 2000 30
Fuzzy Selectors need not be ‘pass/fail’. True 1 False 0 True False 1 0 Magic Lenses - Ken Fishkin - Nov. 2000 31
Selectors over [0. . 1] Magic Lenses - Ken Fishkin - Nov. 2000 32
Numerical Operators Magic Lenses - Ken Fishkin - Nov. 2000 33
Fuzzy Composition Selectors on [0. . 1] implies composition on [0. . 1] n Replace AND by MIN, OR by MAX, NOT by complement n Presently, have implemented arithmetic (“DIFF”), statistical (“SQRT”), and fuzzy (“VERY”) n Many others possible n Magic Lenses - Ken Fishkin - Nov. 2000 34
Fuzzy example Magic Lenses - Ken Fishkin - Nov. 2000 35
Missing Data - display Magic Lenses - Ken Fishkin - Nov. 2000 36
Missing Data - example Magic Lenses - Ken Fishkin - Nov. 2000 37
Missing Data - composition n How do composition operators handle it? We treat it like IEEE Na. N Magic Lenses - Ken Fishkin - Nov. 2000 38
Meta-Functions n Click ‘through’ the window to send a command to the data underneath. Magic Lenses - Ken Fishkin - Nov. 2000 39
Conclusion (1995) by merging Dynamic Queries with Magic Lenses, we keep the interactive, visual nature of queries, but add more functionality. n Future work: a slicker UI, user studies. n Magic Lenses - Ken Fishkin - Nov. 2000 40
Conclusion (2000) n If this is so great, why doesn’t everyone use it? u Inter-app. Requires lots of “plumbing”, Xerox licensing. OS X? u Intra-app. Requires Xerox licensing. So far SGI only one determined enough to do it. Magic Lenses - Ken Fishkin - Nov. 2000 41
- Slides: 41