||COMP 388-003 Course ID: 5974
COMP 488-004 Course ID: 5975
||COMP 271 or Instructor Permission
||Dr. Channah Naiman
|to be announced. All office
hours are online.
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
visualizations, including R-ggplot and Tableau, with some possible exposure
to some features in Excel.
Outcome: Students will be able
to select and construct appropriate visualizations for different
applications, using a range of tools and techniques.
- Appreciate the role of Data Visualization in various domains
- identify good and bad visualizations, and the criteria to critique
- Select the appropriate visualization for a specific purpose
- Use various tools and techniques to construct a range of
visualizations for both exploration and explanation
- Learn to "tell a story" about your data using visualization
Course Materials: All of the material
(texts, labs and software) that you need for this course is available for
free online, at various sites:
- For the Intro to Data Visualization module of the course, links are
provided in the Course Schedule and on Sakai under the appropriate
topic. Some important links include:
- For the R module of the course, below are the main links (in effect,
the "text" for this part of the cousre). Additional links are
posted in Course Schedule or Sakai topic.
- Jared Lander. R for
Everyone, Advanced Analytics and Graphics 2nd edition,
Addison-Wesley, 2017. ISBN-13: 978-0134546926.
do not need to buy the book. There is a free 48-page preview of the first edition available
at the Pearson site. There are also many sites online where you
can sign up to be able to download a pdf. However, I walked
through many examples that are inspired by this text.
- Alboukadel Kassambara. Guide
to Create Beautiful Graphics in R, STHDA, 2013.
isbn: 9781532916960. Most examples, with small
modifications, are available on his wonderful website
and his R
support website. Although the book is technically 2013,
the website is current.
text. Comprehensive book on R, not just for visualization,
but chapters on viz also.
- Nice site for playing with R
- CodeAcademy for R.
- The resources in R and ggplot are endless! Datacamp, and many,
- If you are interested in the statistical side of R, you may want
this book as an R
- For the Tableau module of the course, there are many sites and youtube
videos. Just touching the surface with some links used in the
Public training videos (used for our labs.) Tableau has
not updated these for the 2020 version, but the 2019 version is
almost identical. The main difference is that the 2020 version
is using "relationships" as a way of specifying joins and
unions. Our course videos have annotations and updates.
- Tableau provides many free
- There are short training videos on
the Tableau Desktop and Tableau Prep download pages. You
will have to sign in with your Tableau login/pwd to access.
Desktop Getting Started Training Videos.
- Many of these videos have not been updated for 2020. (The
updates are not crucial.)
Prep Getting Started Training Videos
are excellent training videos by Simplilearn. The
introductory videos shown are from 2018. My annotated
versions have some explanations relevant to our course, and
I have also updated them for 2020. Simplilearn has a 2020
version of a
full 6-hour course on introducing Tableau; however, that is
overkill for this course, and I would rather spend that time on
learning some additional intermediate topics and other types of
charts, which our course covers in later videos.
- anything by Ryan
his excellent book,
or, if you really want to invest in Tableau training,he has an
site (subscription) that is excellent.
- 50 tips in
50 minutes, by Jeffrey Schaffer
- 50 charts in
- There are too many support sites, blogs and videos to mention.
Stackoverflow is one that deserves mention, but there are many others.
- Course Support:
- Assignment submission and grades will be maintained on Sakai.
- We will be using R and RStudio for the R module of the course.
- We will be using both Tableau Public and Tableau Desktop for the
Tableau module of the course:
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.
This class is completely online and it
is asynchronous. There are videos for lectures and "lab
prep". It is important to come prepared to any zoom meetings that
we have, as I will not repeat entire lectures and labs during those
meetings However, students have found the videos to be a good
substitute for in-person lectures, and in some ways better, as you can
start, stop and repeat those segments as required. There will be
some zoom "Q & A" meetings, times to be determined by student
poll. There will be some mandatory project team meetings with me,
and I will always be available for individual and team meetings to help
you when you need help.
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 and assignments are usually required to be completed before we
meet for our scheduled Q & A 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
Much of your work will be done on your laptop, on your local 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 Github, Box, or similar.
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
- Using or copying an outside person's work on an exam or assignment in
any fashion. "Outside person" includes a person who put something on a
web page. It has become depressingly familiar for me, most every
semester, meting out penalties for using someone else's work on the web.
Do not do it.
- Anything that vaguely resembles something from any Instructor's Manual
- Work includes outlines, pseudocode, code, and documentation.
- Allowing your own work to be copied or used by an outside person.
- Submitting as your own work something that has been written by an
outside person (or web site).
- Using any unauthorized reference on an exam or assignment
- Not acknowledging and describing in writing on an assignment any help
you received or gave.
- If you are working on a pair or group project, an "outside person"
only refers to people other than your assigned partner or team.
- Note that cheating goes both ways: both giving and receiving.
- Consultation is allowed with the TA (if we are fortunate enough to get
one) and with me. If you consult with the TA and/or with me, still make
a comment at the top of your work about the substance and depth of the
As of this writing, there are no exams. In addition to assignments
throughout the course, there is a culminating assignment in R, after the R
module of the course, and the Project is in lieu of a final exam.
- The meaning of program or query specifications (not the plan for the
solution or the actual solution).
- The tools used to write programs.
- The restrictions of the current programming language syntax.
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
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 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.
There are 1005 possible points in the course. No extra credit
points availalble. Grading is out of 1000 points (so 5 extra built
Orientation (30 points)
|Syllabus and Tour of the course video
|R and R Studio Installation
|Tableau Public Installation
|Tableau Desktop Installation
Assignments (595 points)
|In-class: Intro R
|In-Class: Motivating Example questions
|In-class: RBase Graphics
and ggplot one-variable
|In-class: ggplot 2-dim
|In-class: ggplot homework
|In-Class: Tableau Gallery Critique and
|Prep DUE: completed .tbwx workbooks
|In-Class: Project-relevant features
new Marks for your project.
|Prep DUE: Recreate WDC video workbook
|In-Class: Drill down in your project,
(or the SuperStore)
|In-Class: Going beyond in your project
|Project: R Component
|Proiect: Tableau Component
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 participate in all labs. Some assignments
are listed as "homework", but are actually started together 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.
"In-Class" (similar to short labs)
and Homeworks (more major assignments)
||Orientation Video Tour of the Course
Orientation Install R and R Studio DUE: 1/24
Orientation Tableau Public and Desktop DUE: 3/14
HW: Visualization Critique
DUE 1/24: Orientation Video Tour of the Course
DUE 1/24: Orientation, R and R Studio Installation
||DUE 1/26: Visualization
Intro R DUE: 1/31
- Motivating Example (DataViz in the context of an
exploration/explanation epidemiology example.) project
|DUE: 1/31 Intro
In-Class:DUE: 2/03: Motivations
in the motivating example
||In-Class Lab DUE: 2/17:
ggplot one-variable lab
- ggplot two-variable plots same type project
- ggplot 2-dim-same-type-scatter
- ggplot-2-dim-same-type-text and also jitter (video)
- ggplot-2-dim-same-bivariate-facet-lines (video)
In-Class Lab DUE 2/24: ggplot,
||In-Class: begin ggplot
(complete as homework)
Discussion and project work day
- I will also be available over
Spring Break if any team wants to meet with me to discuss the
- Identify dataset
3/15: ggplot Homework
Orientation DUE 3/15
- Tableau Public Overview (Tableau
Public Training Videos)
- 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.
- You may want to review the Tableau
|In-Class DUE 3/23: Tableau
Public Gallery critique and features. Similar to your
first assignment, but on Tableau Public Gallery.
- Complete the following workbooks before class. These are
comprehensive examples, with many features and different types
- Simply Learn #1 Annotated Lab video
- The video shows using two
files: deliveries and matches. However, the
matches file that I found didn't have a "match winner" field
as per the video. So I created that field, and stored
it in an updated file that I named matches_winner.csv
- Simply Learn #2 Annotated Lab
video same datasets as in #1
- The videos build the workbook using the Tableau Desktop
Public Edition (the free Public software that downloaded when
you signed up for the free Tableua Public.) You may do
that. Or, you may use Tableau Desktop Professional (the
student-licensed software that you downloaded), and then
publish to Tableau Public (the free cloud service) and/or save
your workbook locally.
- You are only required to complete the workbook up to time
33:34 in the video which completes the creation of the first
dashboard. You can certainly complete the second
dashboard if you choose to do so!
- Work on projects--incorporate some of the Tableau features
into your project
- Maybe get to some Excel
|Lab Prep, DUE 4/03:
In-class DUE 4:04: Identify specific features, visualization
types, etc., from the Simply Learn labs that might be appropriate
for your project.
||In-class DUE 4/08:
Create 1-3 worksheets for your project with at least 3 marks from
the marks shown in the lab workbook.
- Lab-Prep: Drill Down using Set Actions (watch, but you are not required to
Drill Down using Parameter Actions (use the same dataset as
- Lab-Prep: Web Data Connectors (you are
required to recreate)
Prep DUE 4/14: Web data connector
In-class DUE 4/18: 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.
(Check with me if you think your project can't use drill-down.)
- Independent research on advanced visualizations.
- 50 tips in 50 minutes video
- 50 charts in 50 minutes video
Data Science--home page of multiple charts! Datasets
the charts listed below can be found on the home page.
But I have provided youtube video links for the specific
charts. Not all of their charts are updated for 2020
(although once you updae a few of them, you should be okay
with the rest. I have updated many of the ones listed
- Sankey Diagram video
updated for 2020 and the Sankey
African Mobile Dataset
- This is a difficult lab, using "data densification" and
some complicated concepts and calculations.
- 2018 version: The video uses an "open with" option
and an older way of performing the
self-union. If you are interested in
seeing how the SQL is embedded, see the older
- Sunburst Chart (radial tree map):
- Likert scale:
- WordCloud video
- For your project, you may want to provide a new
worksheet that has the words that will be used for your
- Waterfall Chart video
- Funnel Chart video
- Lollipop, Dumbells, Slope, Butterfly (Diverging Bar Chart)
- and more!!!
- Anything by
- Practically anything by Ryan Sleeper
DUE 4/22: Incorporate an advanced or independently-researched
feature into your project
|DUE on 12/05: Any late
assignments, with permission, for half credit
|| DUE 5/05: Project
Please refer to the the LUC