Giter Site home page Giter Site logo

data-viz's Introduction

Data Visualization

Spring 2015 | QMSS G4063 | MW 1:10pm-2:25pm | 313 Fayerweather  
Quantitative Methods in the Social Sciences (QMSS)  
Graduate School of Arts and Sciences (GSAS) 
Columbia University

Instructor

Elliot Cohen, Ph.D.
affiliation QMSS | Earth Institute | Sustainable Engineering Lab
contact [email protected] | 212.854.7993
office hours Wednesdays 2:30-3:30pm IAB 270C

Course Description

This course offers a rigorous introduction to data visualization from theory to implementation. Drawing on a combination of lectures, readings, discussions and coding, we will translate the timeless concepts of Minard, Playfair, Tufte and Wilkinson to new and diverse fields of study. Students will receive a coding crash-course in R, JavaScript, CSS, HTML and D3. The goal is not to become computer scientists, but to build the requisite foundation for modern implementation of exploratory and explanatory data visualizations. Students will have the opportunity to work in small teams to create interactive data visualizations worthy of their portfolios. The final deliverable will be a research-driven data visualization with accompanying prose in the form of a conference paper submission. A working knowledge of R from at least one previous class is highly recommended.

Deliverables

  • Quizzes (30%) Quizzes are essential for assessing student learning and pedagogical efficacy. There will be 4 quizzes in total; students may pick their best three to count towards their final grade.
  • Homework (30%) Students will complete at least three assignments and submit them to the course repository as pull requests. All submissions must follow a "Year-Month-Day-YourName-AssignmentName.FileExtension" naming convention. Assignments will serve as progress indicators on key concepts, methods and techniques.
  • Semester Project (30%) Students will have the opportunity to work in small teams to create data visualizations worthy of their portfolios. The final deliverable will be a well-articulated, research-driven data visualization and accompanying prose in the form of a conference paper submission. Students will have considerable leeway in choosing a project topic and finding an appropriate conference or forum for submission.
  • Class Participation (10%)
    • Attendance
    • Being awake, attentive and respectful
    • Being helpful to peers and the class as a whole
    • Contributing to group work and peer code reviews

Required Reading

Learning Objectives

... and resources to help you get there

Get Started Now!

  • Install R and RStudio

  • Read about RMarkdown

  • Install git

  • Create a github account if you don't already have one

  • Fork the class repo. Your assignments will be submitted as pull requests!

      git clone https://github.com/YOUR-NAME/qmssviz.git
      cd data-viz
      git remote add upstream https://github.com/ecohen4/data-viz.git
    

Submit Assignments

Your assignments will be submitted as pull requests to the class repository on github! Suppose you saved changes on your own gh-pages branch and would like to submit a ‘clean’ pull request with only your files and the commits you want. This is pretty easy.

Option 1: Basic way with file checkouts (losing history):

git checkout upstream/gh-pages #you will be on a ‘detached HEAD’  
git checkout -b hw1 #checkout a new branch called 'hw1'  
git checkout <branch> <folder/filename> #pluck a folder/file from another branch but stay on the current branch (in this case 'hw1').  
git add <folder/filename>
git commit -m "add only the right files on new clean branch"
git push -u hw1 #push commits to a new branch called hw1.

Your new hw1 branch now has a copy of the folder/file(s) your plucked from elsewhere. Your working tree is still on the 'hw1' branch and you can continue to work on the files and commit+push further changes as frequently as you like.

Option 2: Advanced way with Rebase (history re-written)

Rebasing rewrites history of a branch, in a really clever way. Each commit becomes a new commit, on top of a new beginning point. This is probably the most common way of making a clean pull request.

git checkout gh-pages
git checkout -b hw1
git fetch upstream
git rebase -i origin/gh-pages

At this point you’re given a list, where you can pick, squash, or remove commits from your branch. Remember, a branch is just a collection of commits. If, for example, you only want to include the last few commits, simply delete all the others and allow rebase to continue. You should now have a branch that contains only the commits you want.

data-viz's People

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.