Matplotlib: Difference between revisions

From CommunityData
(Link to github directly)
 
(8 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[File:Matplotlib-hist2d.png|right|500px]]
[[File:Matplotlib-hist2d.png|right|500px]]
__NOTOC__
__NOTOC__
== Visualizing data with Matplotlib and Wiki-bios ==
== Getting Started ==
Download the CDSW Matplotlib code from [https://github.com/makoshark/matplotlib-cdsw/archive/master.zip here] and unzip it on your machine.
 
We will also need the data file that is [http://communitydata.cc/~mako/hp_wiki.tsv here]
 
== Visualizing data with Matplotlib ==


In this session, we will explore how to produce clear, informative charts, graphs, and plots with [http://matplotlib.org/ Matplotlib], the most popular toolkit for scientific data visualization in Python.
In this session, we will explore how to produce clear, informative charts, graphs, and plots with [http://matplotlib.org/ Matplotlib], the most popular toolkit for scientific data visualization in Python.


We'll start with the data-set created in [http://wiki.communitydata.cc/Community_Data_Science_Workshops_(Spring_2015)/Day_3_Lecture this morning] containing information about edits to the Harry Potter Wikipedia article.  
We'll start with the data-set created [[Community_Data_Science_Workshops_(Fall_2015)/Day_3_Lecture|this morning]] containing information about edits to the Harry Potter Wikipedia article.  
 
We will then proceed to visualize different aspects of data from the [[Community_Data_Science_Workshops_(Fall_2015)/Day_2_Projects/Socrata|Socrata web API]].
 


We will then proceed to visualize different aspects of data from the [http://wiki.communitydata.cc/Community_Data_Science_Workshops_(Spring_2015)/Day_2_Projects/Socrata Socrata web API].
=== Inspiration ===


* [https://flowingdata.com/ Flowing Data]
* [http://www-01.ibm.com/software/analytics/many-eyes/ Many Eyes]
* [http://www.edwardtufte.com/tufte/ Edward Tufte]
* [http://www.visualizing.org/ visualizing.org]
* [http://idl.cs.washington.edu/ UW Interactive Data Lab]


=== Goals ===
=== Goals ===
Line 20: Line 33:
* Exercise your creativity by making your own visualization
* Exercise your creativity by making your own visualization


# IPython: an interactive python shell
# Download the CDSW Matplotlib code from [https://github.com/makoshark/matplotlib-cdsw/archive/master.zip here] and unzip it on your machine.
# First plot: <tt>001-hello-plot.py</tt>
# First plot: <tt>001-hello-plot.py</tt>
# Subplots: <tt>002-subplots.py</tt>
# Subplots: <tt>002-subplots.py</tt>
Line 28: Line 39:
# Make another kind of plot: <tt>004-plot-histogram.py</tt>
# Make another kind of plot: <tt>004-plot-histogram.py</tt>
# Dive deeper into web APIs: <tt>005-traffic-timeseries.py</tt>
# Dive deeper into web APIs: <tt>005-traffic-timeseries.py</tt>
# Play around with any/all the data you've seen!
# Play around with any/all the data you've seen! You can find some more examples in the <tt>wikibios</tt> folder.
   
   
=== References ===
=== References ===
Line 50: Line 61:


[[File:Wikipedia.png|right|250px]]
[[File:Wikipedia.png|right|250px]]
[[Category:CDSW]]

Latest revision as of 16:22, 7 May 2016

Getting Started[edit]

Download the CDSW Matplotlib code from here and unzip it on your machine.

We will also need the data file that is here

Visualizing data with Matplotlib[edit]

In this session, we will explore how to produce clear, informative charts, graphs, and plots with Matplotlib, the most popular toolkit for scientific data visualization in Python.

We'll start with the data-set created this morning containing information about edits to the Harry Potter Wikipedia article.

We will then proceed to visualize different aspects of data from the Socrata web API.


Inspiration[edit]

Goals[edit]

  • Get set up to make graphs with Matplotlib
  • Learn the basics of the Matplotlib API and workflow
  • Practice reading the Matplotlib documentation
  • Build a plotting program step by step
  • Learn simple ways to distill the essence of a large data set
  • Explore the art of visualizing data
  • Exercise your creativity by making your own visualization
  1. First plot: 001-hello-plot.py
  2. Subplots: 002-subplots.py
  3. Let's do something more interesting: 003-plot-timeseries.py
  4. Visit the Matplotlib gallery.
  5. Make another kind of plot: 004-plot-histogram.py
  6. Dive deeper into web APIs: 005-traffic-timeseries.py
  7. Play around with any/all the data you've seen! You can find some more examples in the wikibios folder.

References[edit]

Example topics to cover in Lecture[edit]

  • line charts
  • histograms
  • binning
  • scatter plots
  • heat maps
  • axis labeling
  • legends