Instructor: Dr. Paul Regier Time: Tues/Thurs 9:30-10:55 a.m.
Email: Place: Austin Hall 213
Office hours: paulregier.com/office-hours

1 Course Description

This course introduces the principles and practice of data visualization and exploratory data analysis. Students will use Python to prepare real data, construct static and interactive visualizations, evaluate visual evidence, and communicate findings to an intended audience. Topics include visual encodings, distributions, relationships, multivariate displays, regression and classification graphics, time series, maps, accessibility, ethics, interactivity, dashboards, and data storytelling. (3 hours)

Prerequisite: MATH 2203 Elementary Statistics

1.1 Materials and Computing Environment

  1. Personal laptop. You will need access during and outside class to complete notebook-based labs.
  2. Python 3.12.10 or an instructor-approved compatible Python 3 version. Download Python from python.org.
  3. Visual Studio Code. Download VS Code from code.visualstudio.com.
  4. VS Code extensions: install the Microsoft Python and Jupyter extensions.
  5. Python packages: installation and environment setup will be completed in Lab 0. The course will use pandas, NumPy, Matplotlib, Seaborn, statsmodels, scikit-learn, GeoPandas, Plotly, and Streamlit, with a small number of supporting packages.
  6. Cloud-backed storage: maintain an organized course folder in OneDrive or another reliable location. Keep a second copy of important work.
  7. Coursera supplement: Data Visualization with Python from Duke University. Access and assignment details will be posted in Canvas.
  8. Optional reference: Naomi B. Robbins, Creating More Effective Graphs, Charter House, ISBN 978-0985911126.

If your computer cannot run the required environment, contact the instructor early so that an alternate campus or hosted arrangement can be identified. Do not wait until an assignment is due to report installation problems.

1.2 Technical Skills Needed

Students should be able to:

  1. Navigate Canvas and monitor course announcements and deadlines.
  2. Organize, locate, upload, and back up files.
  3. Use VS Code to open a course folder and Jupyter notebook.
  4. Follow technical instructions and report the exact text of an error when requesting help.

Prior experience with Python is helpful but not assumed to be uniform. The first part of the course provides focused practice with Python and pandas for data work.

1.3 Learning Outcomes

By the end of this course, you will be able to:

  1. Prepare, reshape, summarize, and validate tabular data with pandas for visualization.
  2. Select visual encodings and chart types that fit the data, analytical question, audience, and communication goal.
  3. Create and customize clear static visualizations with Matplotlib and Seaborn.
  4. Interpret distributions, relationships, comparisons, time trends, and multivariate patterns using appropriate visual evidence.
  5. Visualize, interpret, and evaluate introductory regression and classification models without overstating predictive performance.
  6. Identify and revise misleading, inaccessible, or ineffective visualizations.
  7. Create interactive visualizations with Plotly and a focused interactive application with Streamlit.
  8. Communicate a defensible data story through reproducible analysis, visual design, annotation, and concise written or oral explanation.
  9. Export, inspect, and submit a reproducible Jupyter notebook as HTML.

2 Course Format

This course meets in person on Tuesdays and Thursdays. Most class meetings will combine brief explanation or demonstration with guided work in a Jupyter notebook. Labs will normally begin in class, where collaboration and questions are encouraged, and conclude with work students complete independently.

Regular attendance and sustained participation are important because the labs build cumulatively. If you miss class, you remain responsible for the material, announcements, and deadlines. Contact the instructor and a classmate promptly to determine what you missed.

3 Assessment

The working grading framework is:

Component Weight
Coursera and preparation assignments 15%
Lab assignments 40%
Two midterm exams 30% (15% each)
Final project 15%
Total 100%

After the final course grade is rounded to the nearest whole percent: \(A=90\text{-}100\%\), \(B=80\text{-}89\%\), \(C=70\text{-}79\%\), \(D=60\text{-}69\%\), and \(F<60\%\).

3.1 Coursera and Preparation Assignments

Coursera activities provide practice with Excel and Google Sheets, reinforce the Python visualization tools used in class, and introduce cloud-based tools. Deadlines and required components will be listed in Canvas. Complete assigned videos, readings, quizzes, and exercises by the posted deadline.

3.2 Lab Assignments

Labs are the primary vehicle for learning the course tools and will normally be assigned about once per week.

  • Labs begin in class; remaining work is completed independently.
  • Collaboration during the guided portion is encouraged, but all submitted work and explanations must be your own unless the assignment explicitly states otherwise.
  • Submit the completed HTML export through Canvas. The original .ipynb file may also be required when stated in the assignment.
  • Before submitting, restart the kernel, run all cells from top to bottom, inspect the output, and verify that the HTML file opens correctly.
  • Labs are due at the time shown in Canvas.
  • Late labs receive a 10% deduction per business day unless an approved accommodation or prior arrangement applies.
  • Emailed assignments will not be graded unless the instructor specifically directs you to use email.

Lab procedures, including VS Code, kernels, notebook execution, and HTML export, will be covered during Week 1. If you miss those meetings, seek help promptly from a peer or during office hours.

3.3 Exams

Two midterm exams will use real data and course tools. Exam tasks may require you to prepare data, create or critique visualizations, interpret results, and explain design choices. Exams will be completed during the assigned class period and submitted through Canvas. Late or emailed exams will not be accepted except under an approved arrangement.

3.4 Final Project

The final project will integrate data preparation, visualization, and communication. Students will create a coherent visual analysis or interactive data product, document their decisions, and present their work. Detailed requirements, milestones, and a rubric will be provided in Canvas.

4 Course Policies

4.1 Attendance and Participation

Attendance will be recorded. Students are responsible for attending class, meeting deadlines, monitoring their progress, and seeking assistance when needed. No automatic number of free absences is promised. University-sponsored absences should be discussed with the instructor in advance whenever possible.

4.2 Collaboration and Generative AI

Discussion and peer assistance are valuable during guided lab work. Unless an assignment says otherwise, submitted code, visualizations, interpretations, and reflections must represent your own work.

Generative AI tools may be used for explanation or troubleshooting only when the assignment permits them. You remain responsible for understanding, checking, and being able to explain every part of submitted work. Do not submit AI-generated code, prose, analysis, or visualizations as your own. When an assignment permits substantive AI assistance, disclose the tool and how it was used. Assignment-specific instructions take precedence over this general rule.

4.3 Course Communication

  • Student to instructor: For email sent after 8:00 a.m. Monday and before noon Friday, allow up to 24 hours for a response. Messages sent after midday Friday may take up to 72 hours. Holidays are excluded.
  • Instructor to student: Check Canvas and your USAO email regularly.
  • Student to student: Communicate professionally and protect classmates’ personal information.

Electronic communication should be clear, concise, and respectful. Before sending a message, check its tone, context, spelling, and required attachments.

5 Student Support and University Policies

The current USAO Syllabus Addendum supplements this syllabus and contains university information on academic honesty, attendance, Canvas, emergency notifications, counseling, disability services, copyright, and student support.

5.1 Student Success Center

The Student Success Center, located in Nash Library 305, provides free tutoring, study groups, and academic mentoring. Bring specific questions, relevant instructions, and your current work when seeking assistance.

5.2 Accessible Education

The Office of Accessible Education assists qualified students in arranging reasonable accommodations. Students who need accommodations should contact the office and notify the instructor as early as practical. Accommodations are not retroactive.

5.3 Academic Honesty

Academic dishonesty, including plagiarism, fabrication, cheating, forgery, unauthorized collaboration, copying code, or misrepresenting AI-generated work, violates the Academic Code of Conduct. Consequences will follow university policy and may include a zero on the assignment. Consult the current USAO Student Handbook and Syllabus Addendum for institutional policy.

5.4 Important Fall 2026 Dates

  • First day of classes: August 24
  • Last day to add a course: August 31
  • Last day to drop a course: September 4
  • Fall Break: October 15-16
  • Last day to withdraw with an automatic W: October 30
  • Thanksgiving Break: November 23-27
  • Last day of classes: December 4
  • Study Day: December 7
  • Final Project due: December 8

Students are responsible for checking the official USAO Academic Calendar and the final-exam schedule for updates.

5.5 Course Changes

The instructor may make changes to course procedures, assignments, or the schedule when necessary, with appropriate notice through Canvas or email. Constructive feedback and corrections are welcome throughout the semester.