Data Visualization Syllabus
|
|
COVID-19 Statement
In keeping with University and iSchool policy, all students are required to engage in appropriate behavior to protect the health and safety of our community.
If you feel ill or are unable to come to class or complete class assignments due to issues related to COVID-19, including but not limited to: testing positive yourself, feeling ill, caring for a family member with COVID-19, or having unexpected child-care obligations, should contact their instructor immediately and cc their advisor.
It is likely we can give you more time on assignments, however you need to reach out to your academic advisor and the course instructor as soon as possible so we have as much “runway” as possible in order to support you.
Additionally, please be aware that there are mental health resources available to students:
- https://www.counselingcenter.illinois.edu/
- https://mckinley.illinois.edu/medical-services/mental-health
- https://www.disability.illinois.edu/health/mental-health-resources
Course Description
Data visualization is crucial to conveying information drawn from models, observations or investigations. This course will provide an overview of historical and modern techniques for visualizing data, drawing on quantitative, statistical, and network-focused datasets. Topics will include construction of communicative visualizations, the modern software ecosystem of visualization, and techniques for aggregation and interpretation of data through visualization. Particular attention will be paid to the Python ecosystem and multi-dimensional quantitative datasets.
Land Acknowledgment
As a land-grant institution, the University of Illinois at Urbana-Champaign has a responsibility to acknowledge the historical context in which it exists. In order to remind ourselves and our community, we will begin this event with the following statement. We are currently on the lands of the Peoria, Kaskaskia, Peankashaw, Wea, Miami, Mascoutin, Odawa, Sauk, Mesquaki, Kickapoo, Potawatomi, Ojibwe, and Chickasaw Nations. It is necessary for us to acknowledge these Native Nations and for us to work with them as we move forward as an institution. Over the next 150 years, we will be a vibrant community inclusive of all our differences, with Native peoples at the core of our efforts.
More information can be found on the Chancellor’s Website.
Course Overview
This course is designed to give practical advice to students on communicating data through visualization. This will involve a considerable amount of programming, and typically this programming will be done in Python, and some Javascript later in the course. For the most part, our data will be quantitative and multi-dimensional. The course will aim to provide both an understanding of what data visualizations communicate and a set of tools for constructing them yourself.
The course will follow a common pattern within each single three-hour or two 1.5 hour instructional session(s). The first 60-90 minutes will be focused on lecture, where concepts and tools will be introduced; typically, each class will focus on one type of visualization or class of visualization. The remaining time will include exploration of a dataset, which may be independent or in groups, and then a wrap-up session at the end.
Students are expected to have laptops with them, as well as access to Python installations (we will go over how to setup the correct packages when necessary), and will be encouraged to participate in class. Homework will be assigned and collected through other methods specified at time of submission like Moodle.
The central themes of the course are:
- What are the components of an effective visualization of quantitative data?
- What tools and ecosystems are available for visualizing data?
- What systems can be put in place to generate visualizations rapidly and with high-fidelity representation?
Pre- and Co-requisites
None, although intermediate Python programming experience is assumed.
Generally the course assumes: an introductory knowledge of Python programming (equivalent to 1 grad course like IS430) + some experience with a Python-related project (and practice of debugging skills, googling errors).
A brief
introduction to several Python packages (e.g. Pandas) will be presented during the course.
Course Materials
There is no required textbook for this course.
Optional textbook Visualization Analysis and Design by Tamara Munzner. You can find a lot of the concepts from this textbook on the books webpage and the associated lecture slides.
As the course progresses, a list of recommended readings will be generated for each class. These will be included in the course materials repository, and students are encouraged to fork that repository and issue pull requests to add suggested readings.
Writing Resources
The iSchool Writing Resources is the in-house writing support team for graduate students at the iSchool. They are here to help you with your writing and help you feel more comfortable and confident in your skills. The writing consultants are not professors or evaluators. They simply know the struggles of graduate and undergraduate-level writing and want to help you learn how to succeed and improve your writing skills. The iSchool writing consultants can help you with every step of the writing process. For detailed information on our services please visit our website: https://publish.illinois.edu/ischoolwritingresources/
Topic Calendar & Optional Reading
Below is an approximate outline of the course and optional reading for each week.
Note that the reading is meant to be complementary to the course, i.e. we won’t
simply rehash what is in the reading during class.
This course is always under development and the course outline below is subject to some flexibility; students will be encouraged to provide feedback on the topics covered, particularly toward the end. Topics that are of particular interest will be emphasized.
Optional texts:
- Visualization Analysis & Design, Tamara Munzner. You can find a lot of the concepts from this textbook on the books webpage and the associated lecture slides.
- Edward Tufte wrote a series of visualization books that are often thought of as foundational to the field. These include The Visual Display of Quantitative Information, Beautiful Evidence, Envisioning Information, and Visual Explanations: Images and Quantities, Evidence and Narrative
- There is a free online book, Fundamentals of Data Visualization by Claus O. Wilke that provies a lot of nice examples and serves as an intro to Tamara Munzner’s book. It has an annotated bibliography at the end that gives a few references for books in data viz that include programming. It is built from the linked GitHub repo. Note that this book is focused on static (not interactive) visualizations.
- Additional references will be added as needed.
Acronyms for books:
- VAD: Visualization Analysis & Design
- FDV: Fundamentals of Data Visualization
Course Outline and Optional Reading List
About Your Instructor
Jill Naiman’s background is in theoretical and computational astrophysics with a current research emphasis on scientific data visualization and the digitization of historical scientific images and text. In addition to her position as Teaching Faculty at the iSchool, she is also currently a Visiting Scholar at the Advanced Visualization Lab at the National Center for Supercomputing Applications. She is currently involved in projects related to increasing access to industry-standard special effects software for scientists - more info can be found here and here. Information about her astrophysical research and outreach efforts can be found here.
Library Resources
http://www.library.illinois.edu/lis/ |
lislib@library.illinois.edu |
Phone: (217) 300-8439 |
Writing and Bibliographic Style Resources
The campus-wide Writers Workshop provides free consultations. For more information see http://www.cws.illinois.edu/workshop/ The iSchool has a Writing Resources Moodle site https://courses.ischool.illinois.edu/course/view.php?id=1705 and iSchool writing coaches also offer free consultations.
Academic Integrity
Please review and reflect on the academic integrity policy of the University of Illinois, http://studentcode.illinois.edu/article1_part4_1-401.html, to which we subscribe. By turning in materials for review, you certify that all work presented is your own and has been done by you independently, or as a member of a designated group for group assignments.
If, in the course of your writing, you use the words or ideas of another writer, proper acknowledgement must be given (using APA, Chicago, or MLA style). Not to do so is to commit plagiarism, a form of academic dishonesty. If you are not absolutely clear on what constitutes plagiarism and how to cite sources appropriately, now is the time to learn. Please ask me!
Please be aware that the consequences for plagiarism or other forms of academic dishonesty will be severe. Students who violate university standards of academic integrity are subject to disciplinary action, including a reduced grade, failure in the course, and suspension or dismissal from the University.
Criteria for grading homework assignments include (but are not limited to) creativity and the amount of original work demonstrated in the assignment. However, students are permitted to use and adapt the work of others, provided that the following guidelines are followed:
- Use of other people’s material must not infringe the copyright of the original author, nor violate the terms of any licensing agreement. Know and respect the principles of fair use with respect to copyrighted material.
- Students must scrupulously attribute the original source and author of whatever material has been adapted for the assignment. Summarize the changes or adaptations that have been made. Make plain how much of the assignment represents original work.
This applies to code as well – you are welcome to use online sources (e.g. StackOverflow) but be sure to include the URL in your code comments.
Additionally, unless explicitly stated do not publish homework solutions online.
Policy on ChatGPT and other Large Language Models (LLMs)
The purpose of written and programming assignments is for students to apply what they have learned in class and learn how to validate statements and code or software. The purpose is not to produce a “perfect” bit of text or code/software – there is no such thing! Instead, we want to see how you problem-solve and what you think about a particular topic.
LLMs can be useful for getting ideas about how to phrase text or to get started on a coding/software problem, however they are not meant to be used in place of your critical thinking skills. Remember – it is more important that we hear your thoughts on topics than it is to generate 100% perfect English, and if you make use of LLMS, we expect significant extra work to be submitted with your submissions.
We will be implementing several policies related to the use of LLMS as listed below:
- Acceptable Use: Students are allowed to utilize ChatGPT or similar AI language models for course assignments or tests but in specific situations. Such usage should be restricted to brainstorming, seeking inspiration, expanding ideas, and improving writing, and must not constitute the primary source of content or answers.
- No Direct Answers: Students must not directly copy or paraphrase AI-generated text without proper attribution. Usage of ChatGPT or similar AI language models to directly answer specific questions or complete entire assignments is strictly prohibited. Students should rely on their knowledge and understanding, supplemented by AI tools for assistance.
- Fact-Checking and Verification: Students must critically assess and verify any information obtained through ChatGPT or similar AI language models before incorporating it into their work. Misleading or inaccurate information from the AI model should not be used in their submissions. Cross-reference the AI-generated information with reputable sources to verify its accuracy and reliability. In particular, if you use an LLM you must:
- Include the LLM name and date of usage
- Include the prompt used
- Include your “validation plan” for each statement that you use from the LLM.
- Writing: For example, if one wants to use the statement “The Sky is blue due to Rayleigh scattering.” as output by an LLM, links to research supporting this claim need to be included (and if those links have also been generated by the LLM, each will need to be verified).
- Code/Software: you will need to create your own validation tests to run the code. Include this in your submission along with a few sentences describing how your validation tests relate to the prompt.
- Transparent Use and Academic Integrity: Clearly indicate any sections or contents that are AI-generated.
- Assignment-Specific Guidelines: Each assignment or test may have specific instructions regarding the use of AI tools. Students must carefully review and comply with any guidelines provided.
- Consequences of Misuse: Violation of the class policy on the use of ChatGPT will be treated as an academic integrity breach and subject to disciplinary action as per the institution’s guidelines.
The above class policy on the use of AI for course assignments were generated by ChatGPT, and selected, modified, and adapted by Dr. Koh on 8/3/23, and further modified by Dr. Naiman on 8/20/2023. The used prompts include: Give me class policy on the use of ChatGPT for course assignments and tasks; Come up with more specific class policy; and Give me examples of class policy on the use of ChatGPT for course assignments and tests.
Statement of Inclusion
As the state’s premier public university, the University of Illinois at Urbana-Champaign’s core mission is to serve the interests of the diverse people of the state of Illinois and beyond. The institution thus values inclusion and a pluralistic learning and research environment, one which we respect the varied perspectives and lived experiences of a diverse community and global workforce. We support diversity of worldviews, histories, and cultural knowledge across a range of social groups including race, ethnicity, gender identity, sexual orientation, abilities, economic class, religion, and their intersections.
Accessibility Statement
To obtain accessibility-related academic adjustments and/or auxiliary aids, students with disabilities must contact the course instructor and the Disability Resources and Educational Services (DRES) as soon as possible. To contact DRES you may visit 1207 S. Oak St., Champaign, call 333-4603 (V/TTY), or e-mail a message to disability@uiuc.edu.
This syllabus may be obtained in alternative formats upon request. Please contact the instructor.
Assignments and Evaluation
General Assignment Info
Assignments in this course will be a mixture of coding/visualization work and written work. These two may not be distinct assignments; students will be asked to describe their code and justify choices for making decisions with respect to visualizations.
Students are expected, unless otherwise instructed, to be the principal authors of their code. This does not mean they may not investigate resources such as StackOverflow, package documentation, etc; however, they must cite when resources (especially StackOverflow and other “recipe” sites) are utilized.
Each assignment will be based on “correctness” and the narrative description of the process. “Correctness” in this case indicates that the code runs without issue, results are produced, and each component of the assignment is completed. The narrative description of the process will be graded on grammar minimally and more so on completeness and thoughtfulness.
The submission process for homeworks will be described by example during class before any homeworks are to be submitted.
Assignment Details
Students will be graded based on a combination of assignments including weekly prose/code homeworks, coding-based automatically-graded labs, and automatically quizzes and a final project. The final project will be a capstone to the course, and will have greater flexibility in software packages and data sources. This project will be introduced around Week 8.
Assignments will either be graded by the PrairieLearn autograder for instant feedback, or by the instructional team after the assignment has been submitted.
The breakdown of your grade will be:
45% | Homework: ~weekly, prose or code, graded whole or partially by instructional team |
20% | Labs: ~bi-monthly, code, graded automatically (can be attempted as many times as you want before the due date) |
5% | Quizzes: ~weekly, short questions about lecture material, graded automatically (multiple attempts are allowed, however with decreasing scores) |
30% | Final project: prose and code, graded by instructional team |
Other notes about assessments
- Unless otherwise specified, all assignments will be completed on the PrairieLearn platform.
- There will be opportunities for extra credit in the homework and final project portions.
- The maximum homework score is fixed at 45% (even with extra credit included).
- Your lowest homework score will be dropped, however, we will not drop:
- Homework #1 (introduction, installations, etc)
- Github Pages Setup Homework (Homework #4)
- Starboard & Jekyll Page Setup Homework (Homework #5)
- Starboard OR Jekyll Page Homework (Homework #7 or #8) – i.e. you need to do AT LEAST one of these assignments
Grading Policy
All assignments are required for all students, aside from one homework (lowest HW grade will be dropped). Completing all assignments is not a guarantee of a passing grade. You must do homework, visualization labs, quizzes, and final project to receive a passing grade. Late or incomplete assignments will not be given full credit unless the student has contacted the instructor prior to the due date of the assignment (or in the case of emergencies, as soon as practicable).
Grading Scale:
above 94 | A |
90-93.99 | A- |
87-89.99 | B+ |
83-86.99 | B |
80-82.99 | B- |
77-79.99 | C+ |
73-76.99 | C |
70-72.99 | C- |
67-69.99 | D+ |
63-66.99 | D |
60-62.99 | D- |
59.99 and below | F |
Assignment Late Policies
We allow students to turn in Homeworks up to a week late without penalty. If you need to “use” one of your late homeworks use the “Extension Request” tool for each assignment in that week’s module and specify that you would like to use an extension. The extension request needs to be submitted before the assignment is due and can not be requested retroactively. You do not need to provide any explanation for why you’d like to use an extension. You will then have one extra week to submit this assignment. No extensions can be applied to Labs, Quizzes, or any parts of the Final Project.
Late policies for homeworks not on extension include: 10% off for up to 1 day late, 20% off for 2 days late, 30% off for 3 days late. All homeworks not on extension will be given a zero if turned in after 3 days past the due date.
Late policies for labs will be: 5% off for up to 1 day late, 10% for up to 3 days late, 20% for up to 4 days late, 30% for up to 5 days late. There are no extensions for Labs.
Quizzes, Extra Credit assignments, and the Final Project follow homework late policies: 10% off for up to 1 day late, 20% off for 2 days late, 30% off for 3 days late. All homeworks not on extension will be given a zero if turned in after 3 days past the due date. There are no extensions for any of these assignments.
Incompletes
Students must request an incomplete grade from the instructor. The instructor and student will agree on a due date for completion of coursework and the student must file an Incomplete Form signed by the student, the instructor, and the student’s academic advisor with the School’s records representative. More information on incompletes is available here: http://webdocs.ischool.illinois.edu/registration/incomplete_grade_form.pdf
Attendance Policy
Students are required to attend each class, and if they are unable to do so must notify the instructor and TA in advance and request an excused absence. Participation in class – in the form of comments, questions, and discussion – is expected.
Email/Slack Policies and Turn-around times
We aim to respond to Slack messages in the main channel within 24 business hours and email within 3 business days. Please note that personal Slack messages are treated as emails and turn around times will be within 3 days (though we will make every effort to respond sooner than that). Please do not use Slack for any questions about grades, or other personal queries – email is the appropriate venue for these questions. Do not post working code or solutions of any kind on Slack publically.
Emergency Response: Run, Hide, Fight
Emergencies can happen anywhere and at any time. It is important that we take a minute to prepare for a situation in which our safety or even our lives could depend on our ability to react quickly. When we’re faced with any kind of emergency – like fire, severe weather or if someone is trying to hurt you – we have three options: Run, hide or fight.
Run
Leaving the area quickly is the best option if it is safe to do so.
- Take time now to learn the different ways to leave your building.
- Leave personal items behind.
- Assist those who need help, but consider whether doing so puts yourself at risk.
- Alert authorities of the emergency when it is safe to do so.
Hide
When you can’t or don’t want to run, take shelter indoors.
- Take time now to learn different ways to seek shelter in your building.
- If severe weather is imminent, go to the nearest indoor storm refuge area.
- If someone is trying to hurt you and you can’t evacuate, get to a place where you can’t be seen, lock or barricade your area, silence your phone, don’t make any noise and don’t come out until you receive an Illini-Alert indicating it is safe to do so.
Fight
As a last resort, you may need to fight to increase your chances of survival.
- Think about what kind of common items are in your area which you can use to defend yourself.
- Team up with others to fight if the situation allows.
- Mentally prepare yourself – you may be in a fight for your life.
Please be aware of persons with disabilities who may need additional assistance in emergency situations.
Other resources
- police.illinois.edu/safe for more information on how to prepare for emergencies, including how to run, hide or fight and building floor plans that can show you safe areas.
- emergency.illinois.edu to sign up for Illini-Alert text messages.
- Follow the University of Illinois Police Department on Twitter and Facebook to get regular updates about campus safety.