Comp
388/488-307
Data Visualization
Fall, 2017
Course #: |
COMP 388/488-307 (in-person with
several online meetings)
Course IDs: 6565, 6569
|
Day/Time: |
Monday 2:45 - 5:15
|
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:
|
usually Monday,
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
available
|
TA:
|
not happening...
|
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 and PowerBI.
Outcome:
Students will be able to select and construct appropriate
visualziations for different applications, using a range of tools and
techniques.
Learning
Objectives:
- 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.
- 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, 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
online
where you can sigh 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.
- ggplot2
documentation
- O'Reilly
text. Comprehensive book on R, not just for
visualization, but chapters on viz also.
- Nice site for playing with
R.
- There
is no CodeAcademy course in R as of this writing. However,
the
resources in R and ggplot are endless! Datacamp, and many,
many
more.
- If you are interested in the statistical side of R, you
may want this book as an R
reference.
- For the Excel and PowerBI Desktop modules of the course:
- Reference (optional): Stephanie Evergreen.
Effective Data
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
.
- We
will use some of the publicly-available files from two of the Apress
books. Files given to you on Sakai. But if you want
to
delve more deeply:
- Reference: Adam Aspin, High Impact Data Visualization
in Excel with PowerView, 3D Maps, Get &Transform and Power BI,
Apress, 2016.
- Reference: Adam Aspin, Pro Power BI Desktop,
Apress, 2016.
- 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.
Software:
- We will be using R and RStudio for the R module of the
course.
- 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
process.
- You will need to install Excel.
- You
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
slides
demonstrate, then contact me, and I'll set up a Virtual Machine for you.
- I
would not suggest using Excel for the Mac. Either use
Bootcamp
with Office on your Mac, or Parallels, or similar, or use a campus
computer with Windows, or use a VM.
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. If Sakai presents too many problems, we will switch
to
CourseSites.
Class
Format:
The
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
you
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
the
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
class.
Reading
materials, lab
assignments
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
this
syllabus.
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.
You are
responsible
for
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
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.
Homeworks/Assignments:
Homework
Assignments: Source
code and Excel files and screen shots required for your
Homework and/or Lab assignments should be submitted to
Sakai.
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.
Project:
You will form teams of two to complete a project,
which
is a major visualization assignment in R. 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:
- 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 anywhere.
- 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 help.
Help from any source is fine concerning
- 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.
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.
If you must miss the exam, let me know well in advance. Then
if
you
have
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,
you
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
your
mind after you see a poor grade. Being sick is not a way to get one
more
chance than everyone else. I may
allow
you to delay an exam due to
illness, but I will not let you be reexamined due to a poor grade.
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
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
a
letter from the SSWD office will be fully accommodated as per the terms
of the letter. Students who are allowed to take their exams
in
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.
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 1000 possible points in the course. No extra credit points avaialble.
Lab Checks (160 points)
Intro R |
20 |
RBase
Graphics
|
20
|
ggplot2
(qplot and 1-var ggplot)
|
20
|
ggplot
2-var
|
20
|
Excel
Hack
|
20
|
Excel
Powev View |
20
|
Excel
PV Maps and 3D Maps
|
20
|
Power
BI |
20 |
|
Homeworks: (340 points)
Visualization Critique | 40 |
Intro R |
40 |
RBase
Graphics
|
40
|
ggplot (very comprehensive assignment)
|
100
|
Excel
Hacks Lab assignment
|
40
|
Excel Hacks Homework | 40 |
Excel
Power View Homework |
40
|
|
|
Orientation (50 points)
Tour of the course video | 10 | Greetings | 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 |
Project |
200 |
Project Excellence
|
50
|
|
|
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.
- No extra credit opportunities will be
provided. It
is neither practical nor fair to the other students.
- Late
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
homework.
After one week (or the late submission deadline), you will receive zero
points for any unsubmitted
assignments. No exceptions.
Course grades are assigned as follows:
A
|
93
|
A-
|
90
|
B+
|
87
|
B
|
83
|
B-
|
80
|
C+
|
77
|
C
|
73
|
C-
|
70
|
D+
|
67
|
D
|
63
|
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
|
Assignments
|
8/28
|
- 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
Critique
|
9/11
|
- Motivating Example (DataViz in the context of an
exploration/explanation epidemiology example.)
- Intro R: PPTs and RProj Lab (done together)
|
DUE:
HW Visualization
Critique
DUE: Lab Check IntroR
Assign: HW:
Intro R
|
9/18
|
- Intro-R, cont'd
- RBase Graphics
|
DUE:
Lab Check RBase Graphics
Assign: HW:
RBase Graphics
|
9/25
|
- ggplot2: qplot
- ggplot2: ggplot, one-variable plots
|
DUE: HW Intro R
Lab Check: ggplot, one-variable
|
10/02
|
- ggplot two-variable plots
|
DUE:
HW
RBase Graphics
Assign: ggplot
Homework
Lab Check: ggplot, two-variable
|
10/16
|
- R and ggplot catch-up day.
- Or, if we're caught up, we'll go ahead with Excel.
- Project Discussion
|
|
10/23 |
- 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
Assign: Excel
Hacks Lab Assignment
Assign: Excel
Hacks Homework Lab Check: Excel Hacks
|
10/30
|
- PowerView: tables, filtering, basic charts, advanced
charts
|
DUE: Excel Hacks Lab Assignment Lab Checks: Power View tables/charts
|
11/06 |
- PowerView: Slices and PV Maps
- 3D Maps
|
DUE: Excel
Hacks Homework
Assign: PV
Homework Lab Check: PV maps |
11/13 |
Power BI: This is an intensive 3-part module, with 3 separate assignments and multiple videos. The
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
weeks.
Part 1 includes:
- 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
model)
- Using built-in graphics
- Installing Custom Graphics
-->Serious Project Check!!!
|
DUE: PV
Homework
DUE: In-class lab, due at the end of class! Lab Check: Power BI |
11/20
|
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
Project work |
|
11/27 |
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.
Project Work |
|
12/04
|
Project
Work Day
Complete labs
|
DUE on 12/03: All 3 PBI assignments. Check Sakai for details
|
12/11
|
Project Presentations |
DUE: Project
|
n
Important
Dates:
Here are some dates from the LUC
academic calendar:
Fall Semester's Open
Registration ends at Midnight |
Sun |
Aug.
27 |
Fall Semester Begins |
Mon |
Aug.
28 |
Late registration and
registration change period begins, late registration fees apply |
Mon |
Aug.
28 |
Late and change registration
ends, Last day to withdraw without a "W" grade |
Mon (Tues, if Labor day) |
Sept.
5 (Tues) |
Labor Day weekend begins,
Classes that begin at 4:15 p.m. or later do not meet |
Fri |
Sept.
1 |
Last day to
withdraw from class(es) with a Bursar credit of 100% - dates maintained
by Bursar |
Sun |
Sept.
10 |
Labor Day, Classes do not meet |
Mon |
Sept.
4 |
Classes resume after Labor Day |
Tues |
Sept.
5 |
Last day to convert from
credit to audit or vice versa, Last day to request or cancel pass/no
pass option |
Mon |
Sept.
11 |
Last day to
withdraw from class(es) with a Bursar credit of 50% - dates maintained
by Bursar |
Sun |
Sept.
25 |
Last day to
withdraw from class(es) with a Bursar credit of 20% , zero credit
therafter - dates maintained by Bursar |
Sun |
Oct.
1 |
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. |
|
Oct.
1 |
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. |
Fri |
Oct.
6 |
Mid-Semester Break: No
classes |
Mon & Tues |
Oct.
9 - 10 |
Classes resume after
Mid-Semester Break |
Wed |
Oct.
11 |
Early alert process begins on
Mon of week 7 and runs through Fri of week 9 |
Mon |
Oct.
9 |
Last day to withdraw with a
grade of "W," After this date the penalty grade of "WF" is assigned |
Fri |
Nov.
3 |
Spring Registration Begins |
Mon |
Nov.
6 |
Thanksgiving Break: No classes |
Wed- Sat |
Nov.
22 - Nov. 25 |
Classes Resume |
Mon |
Nov.
27 |
Fall Semester classes end |
Saturday |
Dec.
9 |
Final Exams |
M.Tu.W*.Th.Fr.Sa |
Dec.
11 - Dec. 16 |
*Study Day Wednesdays: No
daytime exams will be held. |
|
|