Introduction to Information Visualization Lecture Notes for Fall, 2009 Dr. Adrian Rusu firstname.lastname@example.org Robinson 3rd floor Office Hours: M 3:00PM – 4:00PM, T 3:00PM-5:00PM
Undergraduate: Graphics and Visualization Specialization • Four or more courses from • Linear Algebra (MTH 01.210) • Data Structures and Algorithms (CS 04.222) • Introduction to Computer Graphics (CS 07.360) • Introduction to Information Visualization (CS 07.370) • Introduction to Computer Animation (CS 07.380)
Graduate: Software Engineering Certificate • Information Visualization (CS 07.570) • Advanced Software Engineering (CS 07.523) • Advanced Object Oriented Design (CS 04.570) • Programming Languages: Theory, Implementation, and Application (CS 04.548)
Graphics, Visualization, Animation • Common Topics • Elements of a Graphics System • Synthetic Camera Model • Graphics Architecture • Graphics Programming (OpenGL) • Graphics Modeling (Maya) • Geometrical Linear Transformations (2D and 3D) • Geometric Modeling
Graphics, Visualization, Animation • Graphics Topics • Clipping Algorithms (2D and 3D) • Types of Projections (of a 3D scene onto a 2D plane) • Illumination and Shading Models • Visible-Surface Determination Algorithms • Transparency • Animation Topics • Animation Principles • Keyframing / Interpolation • Rigid Body Dynamics • Articulated Figure Motion: forward and inverse kinematics, walking, motion capture • Group Behavior: flocking, particle systems • Facial Animation • Animation of Natural Phenomenon: fire, smoke, plants • Animating Surfaces: cloth, hair, fur
Course Objectives • To provide a comprehensive introduction to information visualization • To become familiar with a graphics programming language (such as OpenGL)
Information Visualization topics to be covered (wishful list) • Information Visualization Design Principles and Theory • Mental Models of Human Beings • Color in Information Display • Interaction Strategies • Multi-dimensional Visualization • Zoomable User Interfaces • Space and Time Limitations • Understanding Relational Data (Graphs and Hierarchies) • Visualization Systems Evaluation
What is this course about? • Techniques and strategies to build systems which better assist analysts to visually analyze information (data)
Prerequisites • Linear Algebra (1701.210) or Math for Engineering Analysis (1701.236) • Proficiency in programming languages C/C++ and/or Java
Required Textbook • Robert Spence. “Information Visualization 2nd Edition": Pearson.
Recommended Books • Benjamin Bederson and Ben Shneiderman. "The Craft of Information Visualization ": Morgan-Kaufmann. • Ben Shneiderman. "Leonardo's Laptop: Human Needs and the New Computing Technologies": MIT Press. • Daniel McCracken and Rosalee Wolfe. "User-Centered Website Development: A Human-Computer Interaction Approach": Prentice Hall. • Giuseppe Di Battista, Peter Eades, Roberto Tamassia, and Ioannis Tollis. "Graph Drawing: Algorithms for the Visualization of Graphs": Prentice Hall. • Colin Ware. "Information Visualization: Perception for Design" (2nd Edition): Morgan-Kaufmann. • Dave Shreiner. “OpenGL Reference Manual” (4th edition): Addison Wesley. • Dave Shreiner, Mason Woo, Jackie Neider, Tom Davis. “OpenGL Programming Guide” (4th edition): Addison Wesley.
Course Web Page http://elvis.rowan.edu/~rusu/InformationVisualization.html
Class Discussion Page http://webct.rowan.edu – Information Visualization
Add/Drop Policy • Second week of classes • Deadline to add • Second week of classes • Deadline to drop
Grading • Final Exam (25% Final Exam): Final Exam is comprehensive. Closed book. • Homework (18%). No late homework for any reason. • Course Involvement and Attendance (qualifies you for Extra Credit - up to 3%) • Class Participation, Imagination (virtually unlimited Extra Credit) • 2 Mandatory Office Visits (2%) • 2 Projects (10% Project1, 35% Project2) • Research Presentation (10%) • Final grades: 92-100% = A, 88-91.9% = A-, 84-87.9% = B+, 80-83.9% = B, 76-79.9% = B-, 72-75.9% = C+, 68-71.9% = C, 64-67.9% = C-, 60-63.9% = D+, 56-59.9% = D, 52-55.9% = D-, 0-51.9% = F. • Always check your (partial) grades
Extra Credit • The instructor will assign up to 3% extra credit available at the end of the course (if you need it!) for class participation (answering and asking questions) and attendance. • Ad-hoc (in-class) extra credit. • For assignments: • For significant (or smart) improvements • Need to check with your instructor first
Research Presentation • Undergraduate • 10-15 minutes presentation of a conference paper on information visualization topics • Graduate • 30-35 minutes presentation • Survey report • In-depth study into an area of visualization • Survey the state of the art via summary of journal/conference papers • Technique report • Study a particular technique in depth
Projects • Purpose of the projects • Project 1: Hands on experience with graphics programming • Project 2: Hands on experience in designing and implementing an information visualization system • Group projects • Accepted and encouraged • Work must reflect number of members in a group • Demo / Presentation • Show off your visualization systems • Oral summary of your report • Use visuals (Powerpoint, HTML, PDFs)
Attendance Policy • As a student at Rowan University, you are expected to attend all classes. • Class attendance will be taken at the beginning of each lecture. • A zero grade will be issued if you miss an exam, unless you inform your instructor beforehand and you can present a documented excuse. • Excessive absences (as judged by the instructor) may lower your grade. • Students who miss more than 4 meetings will be reported to the Dean of Students and will receive an F in the course.
Be Involved… • Attend class • Much is covered that is not in the textbook or in the lecture notes • Material is core part of the exams • Official place for announcements • Visit course Web site on a regular basis • Lecture Notes • Assignments • Use office hours • Ask questions
…But Don’t Be Too Involved • You cheat, you fail! • Final grade is “F”, irrespective of partial grades • Homework, project, exams • To avoid being a cheater • Always do your work by yourself • Do not borrow work (not even from the Web) • Do not lend work • Do not put your work on the Web • For programming assignments, allowing others to look at your code is expressly forbidden • Your professor is your friend, but your friend is not your professor • Your friend’s help may be cheating
Assignments (1) • Hand in on time • You do get sufficient time • Start early • Do not wait until the last minute • Assignments take time • Printers break, paper runs out • You are not the only one • No late assignments
Assignments (2) • Package properly • Every assignment… • …lists your name • …lists the course number • …has a cover page • …is properly stapled • No handwriting • Disks (when needed) are properly attached • Failure results in loss of points
Questions • When in doubt • Ask your professor • Open door policy • Questions during lecture are especially encouraged • Post questions on the discussion page (preferred) • E-mail questions • Questions will generally be answered within 24 hours (except weekends) • So don’t leave your questions to the day before an assignment is due
Mandatory Office Visits • The first mandatory office visit must occur during the first week of the semester in order for you to receive credit for it. • You must also fill out and hand in the questionnaire (found at the class Web page) at the time of your first mandatory visit. • The second mandatory office visit must occur mid-semester. • Note: submit your filled questionnaires by email and only come to the office if asked by the instructor.
Students with Disabilities • Students with disabilities are encouraged to speak with me as early in the semester as possible about their needs for special accommodations. • Late notification will delay requested accommodations.
Miscellaneous • You get out of the course what you put into it • Follow instructions • Read and study the textbook and notes • Help is available, do not be afraid to ask questions • Discover programming details by yourself
Important Dates • Election Day (No class): Tuesday 11/03 • Final Exam (unless announced otherwise): TBA. • Final Project Presentations: TBA (in class)
What is Information Visualization? • The use of computer-supported, interactive, visual representations of abstract data to amplify cognition • Card, Mackinlay, Shneiderman Human Data Data Transfer How?
Example 1 • Relationship between Income and Education?
College Degree % Per Capita Income
Example 2 Home Finder
More than just “data transfer” • Glean higher level knowledge from the data Learn = data knowledge • Reveals data • Reveals knowledge that is not necessarily “stored” in the data • Insight! • Hides data • Hampers knowledge • Nothing learned • No insight
User Tasks Excel can do this • Easy stuff: • Min, max, average, % • These only involve 1 data item or value • Hard stuff: • Patterns, trends, distributions, changes over time, • outliers, exceptions, • relationships, correlations, multi-way, • combined min/max, tradeoffs, • clusters, groups, comparisons, context, • anomalies, data errors, Visualization can do this!