||COMP 388/488-307 (in-person with
several online meetings)
Course IDs: 6565, 6569
||Monday 2:45 - 5:15
||Cuneo Hall, Room 117
||COMP 271 or Instructor Permission
||Dr. Channah Naiman
12:30 - 2:30.
Doyle Center 205, x. 88113 (I don't really check this number. please email me!!)
Also, shortly before and after class in or near our classroom, if room
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 and PowerBI.
Students will be able to select and construct appropriate
visualziations for different applications, using a range of tools and
- Appreciate the role of Data Visualization in various domains
- identify good and bad visualizations, and the criteria to
- Select the appropriate visualization for a
- 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
Materials: All of the material (texts, labs and
you need for this course is available for free online, at various sites:
the Intro to
Data Visualization module of the course, links are provided in the
Course Schedule and on Sakai under the appropriate topic.
the R module of the course, below are the main links (in effect, the
"text" for this part of the cousre). Additional links are
in Course Schedule or Sakai topic.
- Jared Lander. R for Everyone, Advanced
Analytics and Graphics, Addison-Wesley, 2014.
ISBN-13: 978-0-321-88803-7. You do not need to buy
the book. There is a free 48-page preview
available at the Pearson site. There are also many sites
where you can sigh up to be able to download a pdf. However,
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
text. Comprehensive book on R, not just for
visualization, but chapters on viz also.
- Nice site for playing with
is no CodeAcademy course in R as of this writing. However,
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 Excel and PowerBI Desktop modules of the course:
- Reference (optional): Stephanie Evergreen.
Visualization, The Right Chart for the Right Data, SAGE,
2017. isbn: 978-1-5063-0305-5. However,
we will be using Evergreen's website for several labs: http://stephanieevergreen.com
will use some of the publicly-available files from two of the Apress
books. Files given to you on Sakai. But if you want
delve more deeply:
- Reference: Adam Aspin, High Impact Data Visualization
in Excel with PowerView, 3D Maps, Get &Transform and Power BI,
- Reference: Adam Aspin, Pro Power BI Desktop,
- There are also many, many other sites,, esp
StackOverflow, quora, and just google it!
- For general DataViz:
- Course Support:
- Assignment submission and grades will be maintained on Sakai.
- We will be using R and RStudio for the R module of the
- We will be using Excel 2016, part of LUC's Office 365
subscription. Instructions are in the Orientation module on
Sakai. There is a set of ppt slides to walk you through the
- You will need to install Excel.
will need Silverlight (yes, it's deprecated, but it's needed for
PowerView. And it only downloads properly via Internet
Explorer, possibly FireFox, see ppt slides on Sakai.)
- If you can't get this all working as the
demonstrate, then contact me, and I'll set up a Virtual Machine for you.
would not suggest using Excel for the Mac. Either use
with Office on your Mac, or Parallels, or similar, or use a campus
computer with Windows, or use a VM.
As of this writing, Sakai will be used for course
homework submissions, and grade postings. While the raw
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. If Sakai presents too many problems, we will switch
class sessions will be a mostly lab, with lecture for the first class
meeting. Expect to participate, and we will be moving quickly
during lab. Unlike some of my other courses, I have not made
videos for this course, so it's important that you follow along, as we
have a lot to cover. If
have a laptop, you will want to bring it to class, unless I let you
know in advance. There are lab checks after most labs, and these are
worth a couple of points each. This is to ensure
participation. Right now the plan is that labs and
lab notes will be made visible only shortly before
class begins, as I want to make sure that you participate in building
the lab itself. The learning is in the process.
However, if I see that we are falling behind, we may shift to
a "flipped" approach, where you can work on the labs before coming to
class, and we can review problematic or difficult areas together in
and homeworks are all posted (or in the case of the labs, will be
posted shortly before the classes_, either on Sakai or linked to on
Because we are not relying on a
traditional text, I will
be presenting examples and demonstrating code from various sources,
which I cite in the labs themselves. Many examples are ones
that I created, so there is no source.
what is presented in class. This is not an online course, so
there is an expectation that you will be in class, completing the work
that is covered. If
you choose not to attend, that is your prerogative; however, make sure
that you find out what you missed, and check to see if you can make up
the points. Sometimes, you cannot.
Cell Phones: Only
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.
code and Excel files and screen shots required for your
Homework and/or Lab assignments should be submitted to
Lab assignments will usually be checked in class.
In addition, a list of the exercises and the due dates for each
assignment are linked to on the Course
Schedule. You can submit your homework with a
partner, since you are working together on homework anyway. However, every student must submit something in Sakai: either
submit the homework, or submit a comment telling me who is submitting
the homework on your behalf. If you are submitting on behalf
of your homework partner, please submit a comment in the
Sakai Assignment box to that effect.
You will form teams of two to complete a project,
is a major visualization assignment in R. The project will be
discussed further in class.
Environment: Campus Network, Rights and
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,
and on our class server. So I don't think there will be an
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.
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
- Work includes outlines, pseudocode, code, and documentation.
- Allowing your own work to be copied or used by an outside
- Submitting as your own work something that has been written
outside person (or web site).
- Using any unauthorized reference on an exam or assignment
- Not acknowledging and describing in writing on an
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
- Consultation is allowed with the TA (if we are fortunate
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 help.
Exams: There is
one exam. It is between a midterm and a final exam,
and is scheduled on 11/20, about 2/3 of the way through the course.
There is no final exam. There is a final project
instead of an exam.
- The meaning of program or query specifications (not the
solution or the actual solution).
- The tools used to write programs.
- The restrictions of the current programming language syntax.
If you must miss the exam, let me know well in advance. Then
a good reason we can possibly make other arrangements. I have little
sympathy for people who inform me after the fact for no good reason.
Exam absences will be veririfed. If they can't be verified,
will not be excused.
*No second try*: If you have an
excuse for not
being prepared to
take an exam, but decide to take it anyway, you don't get to change
mind after you see a poor grade. Being sick is not a way to get one
chance than everyone else. I may
you to delay an exam due to
illness, but I will not let you be reexamined due to a poor grade.
Holidays: Students with religious holiday
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
with Disabilities: If you have a documented
and wish to discuss academic accommodations, please contact the
Services for Students with Disabilities Office (773-508-3700 and
SSWD@luc.edu) as soon as possible.
Students with documented disabilities who provide me with
letter from the SSWD office will be fully accommodated as per the terms
of the letter. Students who are allowed to take their exams
the SSWD 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.
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
only your performance in this course in calculating grades, using the
grading breakdown posted in this syllabus. If you cannot
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
grade and to keep apprised of the withdrawal
posted by the registrar.
There are 1000 possible points in the course. No extra credit points avaialble.
A "very good" project that fulfills the requirements and is
perfectly satisfactory can earn full points for the Project.
That would be 250 points A "good" project should be about a
B. If you get full points on your project and do not earn any
Project Excellence points, please don't ask me what you did "wrong".
The answer will most likley be "nothing".
Project Excellence points can be earned for a project that
is truly excellent, incorporating components well beyond the material
covered in class, or simply having a real "Wow" factor. A
grade of "A" means "excellent". There are many points in this
course that could be considered free points. Full points for
Homework and Labs can be earned if significant effort is demonstrated:
you are graded for completeness, not necessasrily for
correctlness (although grossly incorrect answers will be marked off).
But for a project to get an A, it must be excellent.
|Lab Checks (160 points)
(qplot and 1-var ggplot)
PV Maps and 3D Maps
|Homeworks: (340 points)|
|Visualization Critique|| 40|
|ggplot (very comprehensive assignment)
Hacks Lab assignment
|Excel Hacks Homework|| 40|
Power View Homework
|Orientation (50 points)
|Tour of the course video||10|
|R and R Studio Installation||10|
|Excel and PowerView Inst.||10|
|Power BI Desktop Inst.||10|
Project and PBI "Exam Substitute" (450 points)
|PBI Lecture/Lab|| 75|
|PBI Lab Assignment|| 50|
|PBI Project Integration|| 75|
Course grades are assigned as follows:
- No extra credit opportunities will be
is neither practical nor fair to the other students.
assignments are worth only half credit, and only with permission. This is true
even if you have a valid reason for submitting the homework
late. Usually, late assginments must
be submitted within one week of the due date for half credit. Further,
even with permission, they can only be submitted late if I have not posted the answers to the
After one week (or the late submission deadline), you will receive zero
points for any unsubmitted
assignments. No exceptions.
Schedule (a listing of topics, with approximate time frame):
The dates below give the sequence and a general idea of the
spent, though we may get ahead or behind this time schedule at
different points, depending on the needs of the class. Be
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).
for the first lecture and the exam, every lecture is a lab. You are
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
everything, and complete all assignments the way you are instructed to
- Intro to DataViz:
- 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
- Motivating Example (DataViz in the context of an
exploration/explanation epidemiology example.)
- Intro R: PPTs and RProj Lab (done together)
DUE: Lab Check IntroR
- Intro-R, cont'd
- RBase Graphics
Lab Check RBase Graphics
- ggplot2: qplot
- ggplot2: ggplot, one-variable plots
|DUE: HW Intro R
Lab Check: ggplot, one-variable
- ggplot two-variable plots
Lab Check: ggplot, two-variable
- R and ggplot catch-up day.
- Or, if we're caught up, we'll go ahead with Excel.
- Project Discussion
- Excel: "plain-old Excel"; hacks
for non-standard Excel charts and graphs
- We will complete some lab work in class.
There is ALSO a lab assignment., AND a separate HW.
|DUE: ggplot Homework
Hacks Lab Assignment
Lab Check: Excel Hacks
- PowerView: tables, filtering, basic charts, advanced
|DUE: Excel Hacks Lab Assignment
Lab Checks: Power View tables/charts
- PowerView: Slices and PV Maps
- 3D Maps
Lab Check: PV maps
||Power BI: This is an intensive 3-part module, with 3 separate assignments and multiple videos.
three parts are displayed in this Course Schedule over three weeks, but
all are due on 12/03, so plan your time accordingly. You
are also required to continue working on your project during these
Part 1 includes:
-->Serious Project Check!!!
- Introduction (it's NOT Excel or Power View, but
sometimes it can look that way...)
- Importing Excel Files and/or Data (if there's a data
- Using built-in graphics
- Installing Custom Graphics
DUE: In-class lab, due at the end of class!
Lab Check: Power BI
Exam: The exam has been replaced by the 3-part PowerBI module,
which includes an assignment that integrates PowerBI into your project!!
Part 2 includes:
- Importing data from a remote MySQL database, and creating a data model.
- Importing a DATA table from another PBI file, setting parameters and relating it to the data model.
- Writing a simple DAX formula (a calculated column)
- Creating time-related visuals
||Online Class. Part 3 of the Power BI module
Part 3 includes:
- incorporating the PBI skills that you learned to create an interactive, time-responsible dashboard for your project dataset.
|DUE on 12/03: All 3 PBI assignments. Check Sakai for details
|| DUE: Project
Here are some dates from the LUC
|Fall Semester's Open
Registration ends at Midnight
|Fall Semester Begins
|Late registration and
registration change period begins, late registration fees apply
|Late and change registration
ends, Last day to withdraw without a "W" grade
||Mon (Tues, if Labor day)
|Labor Day weekend begins,
Classes that begin at 4:15 p.m. or later do not meet
|Last day to
withdraw from class(es) with a Bursar credit of 100% - dates maintained
|Labor Day, Classes do not meet
|Classes resume after Labor Day
|Last day to convert from
credit to audit or vice versa, Last day to request or cancel pass/no
|Last day to
withdraw from class(es) with a Bursar credit of 50% - dates maintained
|Last day to
withdraw from class(es) with a Bursar credit of 20% , zero credit
therafter - dates maintained by Bursar
|Application for Degree. Last
day to file, for degrees being awarded at the end of the Spring
Semester and the Summer Term of the following year.
|Last day for students to
submit assignments to change an "I" mark, from the preceding Spring and
Summer Terms, to a letter grade. Faculty may set earlier deadlines.
|Mid-Semester Break: No
||Mon & Tues
9 - 10
|Classes resume after
|Early alert process begins on
Mon of week 7 and runs through Fri of week 9
|Last day to withdraw with a
grade of "W," After this date the penalty grade of "WF" is assigned
|Spring Registration Begins
|Thanksgiving Break: No classes
22 - Nov. 25
|Fall Semester classes end
11 - Dec. 16
|*Study Day Wednesdays: No
daytime exams will be held.