Comp 488-001
Data Visualization
Fall, 2019

Course #: COMP 488-001 (in-person flipped with  several online meetings)
COMP 488-002 (online)
Course IDs:  6187, 6918
Day/Time: Thursday, 4:15 - 6:45
Classroom: Cuneo Hall, Room 117
Prerequisites: COMP 271  or Instructor Permission
Instructor: Dr. Channah Naiman
email: cnaiman@luc.edu
web page: http://webpages.cs.luc.edu/~cnaiman
office hours:
to be announced
Doyle Center 205, x. 88113  (I don't really check this number.  please email me!!)
Our classroom is available at 3:45, and it is also free after class.
TA:
not happening...
Syllabus Index
Learning Objectives
Exams  
Texts and Software Grades
Tutoring Programmng environment
Sakai/Piazza
Academic Honesty
Class Format, Attendance
Religious Holidays
Homework/Assignments Students with Disabilities
Course Schedule Important Dates
Project


Course Description:  This course introduces students to the concepts and techniques of Data Visualization for exploration and explanation of a dataset.  Students learn the guidelines for good visualizations; how to select a visualization appropriate to a specific application; and modern tools used in constructing visualzaitons, including R-ggplot, Excel's Pivot Tables, and Tableau.

Outcome:  Students will be able to  select and construct appropriate visualziations for different applications, using a range of tools and techniques.

Learning Objectives:
Course Materials: 
All of the material (texts, labs and software) that you need for this course is available for free online, at various sites:

Software:

Sakai:
As of this writing, Sakai will be used for course announcements, homework submissions, and grade postings.  While the raw scores posted on Sakai should be correct (although I have encountered some problems with that too!), please do not rely upon Sakai's Course Total calculations.  Usually, they are okay, but there have been problems.  I check the total grade postings periodically, to check up on Sakai's calculations.  Certainly, before the mid-term grade posting on Locus, and before the drop deadlines, check your grades (and I will too!)  Grades are calculated as specified in this syllabus. 

Class Format:
This class is almost completely "flipped".  There are videos for lectures and "lab prep".  It is important to come prepared to class, since you will be working on labs and assignments during class time.  Generally, labs and assignments are completed in class and are due at the end of the class session in which they are listed.  Exceptions will be noted in class and/or posted on Sakai.  Often, lab materials will not  become available until the beginning of the class session.

Cell Phones: Only you know the relative importance of any particular cell phone call, and whether it is important for you to answer a call immediately rather than later. I do want you to be respectful of your classmates and disrupt the class  as little as is practical. If you get cell phone calls with fair frequency, be sure to have the ring muted before coming to class. If you rarely get calls, you might not mute it ahead, and your cell phone may happen to ring. Get rid of the noise as soon as possible, and do not get flustered. I assume you will move outside the classroom for a conversation. If you get fairly frequent calls that you are likely to consider important answering, sit in a place where your exit and re-entrance are as unobtrusive as possible.


Labs/Assignments:
Labs and assignments are usually required to be completed during class time.  Due dates are listed in the syllabus on the Course Schedule.  You may usually submit your work with a partner.  Exceptions will be noted in class.   However, every student must submit something in Sakai:  either submit the lab/assignment, or submit a comment telling me who is submitting the assignment on your behalf.  If you are submitting on behalf of your   partner, please submit a comment in the Sakai Assignment box to that effect.

Project:  You will form teams of two to complete a project, which is a major visualization assignment in R and Tableau.  The project will be discussed further in class.

Programming Environment: 
Campus Network, Rights and Responsibilities
As a user of the campus network, you should be aware of your rights and responsibilities in http://www.luc.edu/its/itspoliciesguidelines/policy_acceptableuse.shtml

Much of your work will be done on your laptop, on your local server, and on our class server.  So I don't think there will be an issue with saving your work.  However, if you use the University computers, be aware that the University computers labs provide Computer Science students with permanent storage on P: drive. If you use both computer lab machines and other machines, or just share with a partner, you will want to take all of your files with you. You can use a flash drive, Google Drive, Mercurial and BitBucket, Box, or, in a pinch, send an email to yourself or your partners wtih attachements.

Academic Honesty:
The penalty for cheating may be anywhere from a 0 on an assignment to a grade of "F" in this course. The appropriate dean will be informed in writing of any cheating incidents. No exceptions, for any reason.

Cheating consists of, but is not limited to:
Help from any source is fine concerning
Exams:  As of thsi writing, there are no exams.  There is a culminating assignment in R, after the R module of the course, and the Project is in lieu of a final exam.

 Religious Holidays:  Students with religious holiday conflicts:  Please let me know within the first two weeks of class if you have a religious holiday conflict with any exam or homework due date, so that we can plan on an accommodation.

Students with Disabilities:  If you have a documented disability and wish to discuss academic accommodations, please contact the Student Accessibility Center (773-508-3700 and SAC@luc.edu) as soon as possible.  Students with documented disabilities who provide me with a letter from the SAC office will be fully accommodated as per the terms of the letter.  Students who are allowed to take their exams in the SAC office are encouraged to do so.  Should you choose to take the exam in the classroom, I cannot guarantee that the classroom environment will be quiet enough to provide you with the environment that your disability may require.  If you choose to take the exam in the classroom, you are taking that risk.

Students with Sponsorships and Scholarships:  If you require a certain grade in order to satisfy a sponsor or a scholarship requirement, please be sure to monitor your grade on Sakai.  I will consider only your performance in this course in calculating grades, using the grading breakdown posted in this syllabus.  If you cannot achieve a minimum grade that is required by a sponsor or a scholarship, I will not change your grade to help you meet that requirement.  This would be unfair to other students, and not reflecive of your performance in this course.  You are reponsible to monitor your grade and to keep apprised of the withdrawal dates posted by the registrar.

Grading:  There are 1005 possible points in the course.  No extra credit points avaialble.  Grading is out of 1000 points (so 5 extra built in).

Orientation (30 points)
Syllabus and Tour of  the course video 5
R and R Studio Installation 5
Tableau Public Installation
10
Tableau Desktop Installation
10



Assignments (595 points)
Visualization Critique
     25
In-class: Intro R      35
In-Class:  Motivating Example questions      30
In-class:  RBase Graphics      55
In-Class:   ggplot:  qplot and ggplot one-variable      55
In-class: ggplot 2-dim lab assignment      35
In-class:  ggplot homework      100
In-Class:  Tableau Gallery Critique and project-relevant features      25
Prep DUE:  completed .tbwx workbooks      45
In-Class:  Project-relevant features from labs      35
In-Class:   using new Marks for your project.      45
Prep DUE:  Recreate WDC video workbook      30
In-Class:  Drill down in your project, (or the SuperStore)      30
In-Class:  Going beyond in your project      50


Project(380 points)
Project Presentation
    45
Project:  R Component
    145
Proiect: Tableau Component
    145
Project Excellence
     45



Course Schedule (a listing of topics, with approximate time frame):

The dates below give the sequence and a general idea of the time spent, though we may get ahead or behind this time schedule at different points, depending on the needs of the class.  Be sure to keep up with where we really are in class.  There will be weekly updates on Sakai, reflecting what we actually cover (and therefore what is due, and when).

Except for the first lecture and the exam, every lecture is a lab.  You are expected to paricipate in all labs.  Some assignments are listed as "homework", but are actually started togeher in class, similarly to a "lab".  So the rule of thumb is:  You have to be in class for everything, and complete all assignments the way you are instructed to in class.  


Date
Activities
In-Class Assignments


8/29
  • Intro to DataViz:  (video)     PPTs
    • What is it, why is it important?  What story do you want to tell?
    • Tufte's Design Principles
    • Cleveland and McGill
    • Preattentive Processing
    • Selecting the right chart
    • Use of color
Assign: HW:  Visualization Critique
DUE (9/03):  Orientation Video Tour of the Course
9/05
DUE: Visualization Critique
In-class:   Intro R
9/12
  • Motivating Example (DataViz in the context of an exploration/explanation  epidemiology example.)  project zip file  
    • Loading and data prep nhanes3 (video)
    • Basic Exploration of Variables; cor; tapply, sapply (video)
    • Data Management:  cbind, subsetting; extract variables (video)
    • Basic R plots focus on barplot, counting, table (video)
    • Intro to ggplot (video)
In-Class:  Motivations in the motivating example
9/19
In-Class: RBase Graphics
9/26
In-Class:  Intro ggplot one-variable lab
10/03
  • ggplot two-variable plots same type project zip file
    • ggplot 2-dim-same-type-scatter (video)
    • ggplot-2-dim-same-type-text  and also jitter (video)
    • ggplot-2-dim-same-bivariate-facet-lines (video)

In-Class:  ggplot, two-variable
10/10
In-Class:  begin ggplot Homework
(complete as homework)
10/17
DUE:  ggplot Homework
10/24
  •  Tableau Public Overview (Tableau Public Training Videos)
    • PDF connect 
      • There are many short training videos on the Tableau Public site.  But do watch the pdf connect video, even if you are not planning to use a pdf file.  It has several features that will be helpful to you.
In-Class:  Tableau Public Gallery critique and features.  Similar to your first assignment, but on Tableau Public Gallery.  Present at the end of class.
10/31
  • Complete the following workbooks before class.  These are comprehensive examples, with many features and different types of visualizations:
  • Work on projects--incorporate some of the Tableau features into your project
  • Maybe get to some Excel Foundations
In-class:  Identify specific features, visualization types, etc., from the Simply Learn labs that might be appropriate for your project.
11/07 In-class:  Create 1-3 worksheets for your project with at least 3 marks from the marks shown in the lab workbook.
11/14
  • Lab-Prep:  Drill Down (watch, but you are not required to recreate) video workbook dataset
  • Lab-Prep:  Web Data Connectors  (you are required to recreate) video   ppts
In-class:  Create a worksheet using drill-down with your project.  If your project dataset is not appropriate for use with drill down, you may use the SuperStore dataset.
11/21
  • Independent research on advanced visualizations.  Possible sources
    • 50 tips in 50 minutes video
    • 50 charts in 50 minutes video
    • Super Data Science--home page of multiple charts!   Datasets for the charts listed below can be found on the home page.  But I have provided youtube video links for the specific charts.
      • Sankey Diagram video 
        • The video uses an "open with" option and an older way of performing the self-union.  Please see my updates here.
        • This is a difficult lab, using "data densification" and some complicated concepts and calculations.
      • Sunburst Chart  video Part 1   video Part 2  my update notes
        • This chart requires reformatting data to a specific format
      • Likert scale video  (three-way join, pivoting data, not too hard)
      • WordCloud video
        • For your project, you may want to provide a new worksheet that has the words that will be used for your worksheet.
      • Waterfall Chart  video
      • Funnel Chart video
      • Lollipop, Dumbells, Slope, Butterfly (Diverging Bar Chart)
      • and more!!!
    • Anything by AnthonySmoak.com                                                                                                                  
    • Practically anything by  Ryan Sleeper

In-class:  Incorporate an advanced or independently-researched feature into your project
12/05
Project Work Day
DUE on 12/05: Any late assignments, with permission, for half credit
12/12
Project Presentations DUE:  Project
n
Important Dates:
Please refer to the the LUC academic calendar