This is a rough weekly breakdown of what we are going to be covering in Storytelling with Data. It is by no means complete, and might be changed many, many times over the course of the semester.

Hop back to the syllabus

Week 1: Course introduction

Housekeeping: Syllabus overview, what you need to know, class content, projects

Theory: How are charts put together (conceptually), visual encoding (marks, attributes), visual signifiers, what determines what (diagramming)

Coding (D3): Conceptually what is D3, practically what is D3, introduction to SVG, what I’ll require you to know for next week, map the diagram to the D3 visualization

Week 2: Visual cues in SVG/D3, project overview

Housekeeping: git and GitHub, projects and project submission

Theory: Hierarchy of visual cues

Coding (D3): More on SVG elements, points/rectangles, binding data, classes/CSS to style elements, scales

Week 3: How shapes work

Theory: Gestalt principles

Coding (D3): Paths (lines, areas, filled shapes), positioning elements

Week 4: Radial graphics

Theory: Cyclical data, polar planar variables

Coding (D3): arcs, pies, radial lines, radial areas

Week 5: Interactivity

Theory: Diagramming interaction, exploration vs. explanation

Coding (D3): Interaction continued, animation

Week 6: Interactivity cont’d and styling content

Theory: Diagramming interaction (cont’d), grid system, typography

Coding (D3): CSS classes, Bootstrap, scrollytelling with Swiper, jQuery?, web fonts with Google Fonts

Week 7: Force diagrams

Theory: Network analysis and displays of complex information

Coding (D3): Force diagrams, update process (con’t)

Week 8: Mapping in D3

Theory: Maps and projections

Coding (D3): Maps and projections (talk about dovetailing!)

Week 9: Color and canvas

Theory: Color

Coding (D3): Canvas vs SVG

Week 10: Canvas continued

Theory: To be determined

Coding (D3): Canvas and complex visualzations continued

Week 11: Introduction to THREE.js

Theory: Uses of 3d in data visualization

Coding (THREE.js): What is THREE.js and WebGL, hello world, simple visuals, textures, 3d data types

Week 12: Displaying data with THREE.js

Theory: To be determined

Coding (THREE.js): More 3D concepts - shaders, meshes, etc, displaying and exploring data sets

Week 13: To be determined

Week 14: To be determined

Hop back to the syllabus

Pushed back

Week 4: Typography and interaction

Theory: Grid system, elements of typography

Coding (D3): Interaction methods, update pattern, rebinding, entering, exiting, key functions, scales