C S 48A: DATA VISUALIZATION
Foothill College Course Outline of Record
|Hours:||4 lecture, 2 laboratory per week (72 total per quarter)|
|Advisory:||MATH 10, MATH 17, PSYC 7 or SOC 7.|
|Degree & Credit Status:||Degree-Applicable Credit Course|
|Grade Type:||Letter Grade (Request for Pass/No Pass)|
Student Learning Outcomes
- Students will be able to communicate analysis insight through data visualization to an intended audience.
- The student will be able to Identify the key techniques and theory used in data visualization
- The student will be able to create and design static and interactive visualizations using a data visualization package
The student will be able to:
A. Identify the key techniques and theory used in data visualization.
B. Create and design static and interactive visualizations using a data visualization package.
C. Communicate analysis insight through data visualization to an intended audience.
A. Identify the key techniques and theory used in data visualization
1. Introduction to data visualization
a. Describe data visualization
b. Compare descriptions of exploratory versus explanatory data visualizations
c. Identify Gestalt Principles in visual perception
d. Describe cognitive load in visual perception to identify cognitive load best techniques
e. Compare static and dynamic visualizations represented as use cases
f. Describe effective design in visual perception to identify effective design best techniques
g. Describe ethical design in visual perception to identify ethical design best techniques
h. Identify most common graphical representations and their key characteristics
i. Recognize the context of use for each graphical representation and what approaches are appropriate for each situation
j. Identify context or setting to properly story-tell with data visualization best practices
k. Identify plot to properly story-tell using data visualization best practices
l. Identify message/interpretation to properly story-tell using data visualization best practices
m. Identify purpose or implications to properly story-tell using data visualization best practices
2. Introduction to a visualization package, such as R, Tableau, or MatPlotLib
a. Describe the purpose and applications of the package
b. Identify and navigate the package environment
c. Import from an external data source
d. Develop a basic data object
e. Apply data visualization customization, such as adding colors, labels, and formatting
f. Develop a variety of data visualizations, including histograms, bar graphs, box plots, pie charts, scatterplots, etc.
B. Create and design static and interactive visualizations using a data visualization package
1. Working with data
a. Prepare data for use in visualization
b. Merge multiple data sources
c. Apply data cleaning techniques
2) Bad data
3) Missing data
d. Identify distinct data types in imported data
e. Identify and use different types of data sources:
f. Develop filtering techniques
g. Develop table calculation techniques
2. Interactive design
a. Apply interactivity of plots with highlight, filter, and URL actions
b. Identify dynamic data visualization best practices
c. Develop dynamic data presentations
d. Identify and develop mapped visualizations
e. Apply custom geocoding to map visualization
f. Develop custom maps
g. Apply background images to map visualizations
C. Communicate analysis insight through data visualization to an intended audience
1. Visual analytics
a. Develop statistical visualizations used in exploratory data analysis
b. Develop trends analytics techniques
c. Develop distributions analytics techniques
d. Develop forecasting analytics techniques
e. Apply mapping techniques
2. Sharing visualizations
a. Identify the value of data visualization in communicating to an intended audience
b. Select most appropriate data visualization for intended outcome
c. Apply design principles, such as eliminating clutter, focusing attention, and thinking like a designer to improve data visualizations
d. Compare the pros and cons of sharing live data versus extracting data
A. Navigating the visualization package
1. Installing and running
2. Creating a simple plot
B. Demonstrating visual design principles
1. Identify effective and ineffective use of design principles in sample products
2. Modify sample products to improve effective communication
C. Explanatory data analysis and visualization
1. Create plots from existing datasets
2. Choose from among various representations (scatterplot, histogram, boxplot, etc.) to communicate the data most effectively
3. Apply labels, colors and formatting
4. Apply statistical techniques to summarize the data
D. External data sources
1. Find and download data from a repository
2. Scrape data from web pages
3. Prepare external data for import
a. Identify and handle missing data
b. Identity and handle bad data
c. Identify and handle outliers
4. Import data into the visualization package
5. Merge data from multiple sources
E. Exploratory data analysis
1. Using complex or large datasets, identify correlations between data elements
2. Using complex or large datasets, identify trends in time-series data
3. Using complex or large datasets, produce and analyze predictive models
4. Choose from among various representations (time series, facets, heat map, tree map, etc.) to communicate the data most effectively
F. Geospatial visualization
1. Summarize geotagged data in the context of a map
2. Create a custom geospatial and data-rich object, such as a stadium or parking lot
G. Dynamic visualization
1. Create animated visualizations
2. Create interactive data applications or webpages
Special Facilities and/or Equipment
B. The college will provide a website or course management system with an assignment posting component (through which all lab assignments are to be submitted) and a forum component (where students can discuss course material and receive help from the instructor). This applies to all sections, including on-campus (i.e., face-to-face) offerings.
C. When taught online, the college will provide a fully functional and maintained course management system through which the instructor and students can interact.
D. When taught online, students must have currently existing email accounts and ongoing access to computers with internet capabilities.
Method(s) of Evaluation
A. Written discussion of concepts on class forums
B. Formative activities, such as quizzes, assignments and graphic organizers
C. Final course project
Method(s) of Instruction
A. Lectures which include motivation for the use of data visualization concepts, example code and visualization objects, and analysis of these products.
B. Online labs (for all sections, including those meeting face-to-face/on campus), consisting of:
1. A programming assignment webpage located on a college-hosted course management system or other department-approved internet environment. Here, the students will review the specification of each programming assignment and submit their completed lab work.
2. A discussion webpage located on a college-hosted course management system or other department-approved internet environment. Here, students can request assistance from the instructor and interact publicly with other class members.
C. Detailed review of programming assignments, which includes model solutions and specific comments on the student submissions.
D. In-person or online discussion which engages students and instructor in an ongoing dialog pertaining to all aspects of designing, implementing and analyzing programs.
E. When course is taught fully online:
1. Instructor-authored lecture materials, handouts, syllabus, assignments, tests, and other relevant course material will be delivered through a college-hosted course management system or other department-approved internet environment.
2. Additional instructional guidelines for this course are listed in the addendum of CS department online practices.
Representative Text(s) and Other Materials
Wilke, Claus. Fundamentals of Data Visualization: A Primer on Making Informative and Compelling Figures. O'Reilly Media, 2019.
Types and/or Examples of Required Reading, Writing, and Outside of Class Assignments
1. Textbook assigned reading averaging 30 pages per week
2. Reading the supplied handouts and modules averaging 10 pages per week
3. Reading online resources as directed by instructor though links pertinent to data visualization
4. Reading library and reference material directed by instructor through course handouts
1. Writing to communicate analysis of existing products
2. Writing to document processes used in analyzing and visualizing data
3. Writing to describe trends or correlations found in data
C. Other Projects
1. Plots based on datasets, along with explanatory text
2. Other forms of graphical objects that communicate data