Biovisualization (BCB 4002/502; CS 4802/582)

Term C/D – 2015

Location
SL 104 T F 1:00–2:50pm

Instructor
Lane Harrison
FL–231

Office Hours
T F 3–5

Course Description

In this course we will study the use of interactive data and information visualization to model and analyze biological information, structures, and processes. Topics include the fundamental principles, concepts, and techniques of visualization and how visualization can be used to study biological data at the genomic, cellular, molecular, organism, and population levels.

Learning Goals

After successful completion of this course, you will be able to:

Required Text

The text we’re using for readings in this course is Interactive Data Visualization: Foundations, Techniques, and Applications, by Ward, Grinstein, and Keim.

Recommended Texts

If you’re interested in data visualization beyond this class, I strongly recommend Tamara Munzner’s Visualization Analysis and Design. (Many of the figures I use in the class lectures come from this book.)

Assignments

Weekly assignments are the core of this course. Each assignment will focus on a particular type of biological data, such as sequences or phylogenetic trees. The lectures and labs will equip you with the biological background, visualization theory, and technical skills to develop an effective visualization for these datasets.

Labs

The second lecture of every week will include an in-class lab. These labs provide an opportunity for you to learn more about visualization design, data analysis, and technologies.

Programming Language

There are two preferred language choices for this course: Processing and JavaScript using d3.js.

Processing is a programming language that sits above Java and facilitates rapid development of graphics applications. If you’re experienced with Java, Processing is a good choice.

If you’re familiar with web programming, you may use JavaScript and d3.js. JavaScript can be confusing, however, so proceed with caution.

If you want to program in a language other than Processing or JavaScript, please see me before you start your projects to insure the language has the appropriate graphics support. Depending on your choice of languages, I may not be able to provide much help in debugging.

Grading

Grading for undergraduates will be 60% assignments and 40% labs (C-term).

Grading for graduate students will be 45% assignments and 25% labs (C-term), then 20% final project and 10% in-class presentations (D-term).

Supplemental Material

Datasets that can be used for some of the projects can be found on Matt Ward’s course page: data, links.

Calendar

C-Term

Week 1 (Jan 12 - Jan 18)

Friday Jan 16
Lecture 1: Overview of Visualization

Course Survey

Week 2 (Jan 19 - Jan 25)

Topics: Reading: Chapters 1 and 2

Tuesday Jan 20
Lecture 2: (Guest Lecture) Liz Ryder: Simulation, Trees, and Networks / Biological Data Representations

Friday Jan 23
Lab 1: BioVis Analysis, Critique, and Design Process (examples)

Sunday Jan 25
Project 0 due: Getting Started

Week 3 (Jan 26 - Feb 1)

Reading: Chapter 4

(Moved to Feb 3) Tuesday Jan 27
Lecture 4: Particle-Based Methods and Applications

Friday Jan 30
Lab 2: Data Parsing and Manipulation; Git/GitHub

(Moved to Feb 5) Sunday Feb 1
Project 1 due: The Game of Life - the effects of surroundings and contacts

Week 4 (Feb 2 - Feb 8)

Reading: Chapter 8

Tuesday Feb 3
Lecture 6: Particle-Based Methods and Applications / Trees and Networks

Thursday Feb 5
Project 1 due: The Game of Life - the effects of surroundings and contacts

Friday Feb 6
Lab 3: Interactive Data Visualization (handout)

Week 5 (Feb 9 - Feb 15)

Reading: Chapter 7

Tuesday Feb 10
Lecture 8: (Guest Lecture) Liz Ryder: Sequences, Structures, and Networks Revisited / Tables of Data

Thursday Feb 12
Project 2 due: Tree of Life - how are things related

Friday Feb 13
Lab 4: d3js: SVG to Layouts

Week 6 (Feb 16 - Feb 22)

Reading: Chapter 9

Tuesday Feb 17
Lecture 10: Sequences and Text

Thursday Feb 19
Project 3 due: Experiments in Biology - how to analyze tables of numbers

Friday Feb 20
Lab 5: Database-Driven Visualization Support Code

Week 7 (Feb 23 - Mar 1)

Reading: Chapter 5

Tuesday Feb 24
Lab 6: Force-directed Layouts Support Code

Thursday Feb 26
Project 4 due: Structures in Biology - 1D sequences

Friday Feb 27
Lecture 12: 2-D and 3-D structures | Color

Week 8 (Mar 2 - Mar 8)

Reading: Chapters 12, 13

Tuesday Mar 3
Lecture 14: Evaluation in Visualization

Thursday May 5
Project 5 due: Revisions and Enhancements

D-Term

Week 1 (Mar 16 - Mar 22)

Tuesday Mar 17
Intro to Final Project - Discussions

Week 2 (Mar 23 - Mar 29)

Tuesday Mar 24
Topic Presentation / Refinement | Prospectus Template

Week 3 (Mar 30 - Apr 5)

Tuesday Mar 31
BioVis paper presentation/discussion 1

Week 4 (Apr 6 - Apr 12)

Friday Apr 10
Checkpoint 1 (presentations)

Week 5 (Apr 13 - Apr 19)

Tuesday Apr 14
BioVis paper presentation/discussion 2

Week 6 (Apr 20 - Apr 26)

Tuesday Apr 21
No Class (ACM CHI)

Week 7 (Apr 27 - May 3)

Tuesday Apr 28
Final checkpoint (presentations)

Week 8 (May 4 - May 10)

Tuesday May 5
Final Project Demo Day

Videos

Bioinformatics Intro.mp4

Databases.mp4

Protein Structure.mp4

Splicing.mp4

TheCentralDogma.mp4