Data visualization with Python and JavaScript : scrape, clean, explore & transform your data /
Saved in:
Author / Creator: | Dale, Kyran, author. |
---|---|
Imprint: | Sebastopol, CA : O'Reilly Media, 2016. |
Description: | 1 online resource ( 1 volume) : illustrations |
Language: | English |
Subject: | |
Format: | E-Resource Book |
URL for this record: | http://pi.lib.uchicago.edu/1001/cat/bib/11609623 |
Table of Contents:
- Preface
- Introduction
- 1. Development Setup
- The Accompanying Code
- Python
- JavaScript
- Databases
- Integrated Development Environments
- Summary
- Part I. Basic Toolkit
- 2. A Language-Learning Bridge Between Python and JavaScript
- Similarities and Differences
- Interacting with the Code
- Basic Bridge Work
- Differences in Practice
- A Cheat Sheet
- Summary
- 3. Reading and Writing Data with Python
- Easy Does It
- Passing Data Around
- Working with System Files
- CSV, TSV, and Row-Column Data Formats
- JSON
- SQL
- MongoDB
- Dealing with Dates, Times, and Complex Data
- Summary
- 4. Webdev 101
- The Big Picture
- Single-Page Apps
- Tooling Up
- Building a Web Page
- Chrome's Developer Tools
- A Basic Page with Placeholders
- Scalable Vector Graphics
- Summary
- Part II. Getting Your Data
- 5. Getting Data off the Web with Python
- Getting Web Data with the requests Library
- Getting Data Files with requests
- Using Python to Consume Data from a Web API
- Using Libraries to Access Web APIs
- Scraping Data
- Getting the Soup
- Selecting Tags
- Summary
- 6. Heavyweight Scraping with Scrapy
- Setting Up Scrapy
- Establishing the Targets
- Targeting HTML with Xpaths
- A First Scrapy Spider
- Scraping the Individual Biography Pages
- Chaining Requests and Yielding Data
- Scrapy Pipelines
- Scraping Text and Images with a Pipeline
- Summary
- Part III. Cleaning and Exploring Data with Pandas
- 7. Introduction to NumPy
- The NumPy Array
- Creating Array Functions
- Summary
- 8. Introduction to Pandas
- Why Pandas Is Tailor-Made for Dataviz
- Why Pandas Was Developed
- Heterogeneous Data and Categorizing Measurements
- The DataFrame
- Creating and Saving DataFrames
- Series into DataFrames
- Panels
- Summary
- 9. Cleaning Data with Pandas
- Coming Clean About Dirty Data
- Inspecting the Data
- Indices and Pandas Data Selection
- Cleaning the Data
- The Full clean_data Function
- Saving the Cleaned Dataset
- Summary
- 10. Visualizing Data with Matplotlib
- Pyplot and Object-Oriented Matplotlib
- Starting an Interactive Session
- Interactive Plotting with Pyplot's Global State
- Figures and Object-Oriented Matplotlib
- Plot Types
- Seaborn
- Summary
- 11. Exploring Data with Pandas
- Starting to Explore
- Plotting with Pandas
- Gender Disparities
- National Trends
- Age and Life Expectancy of Winners
- The Nobel Diaspora
- Summary
- Part IV. Delivering the Data
- 12. Delivering the Data
- Serving the Data
- Delivering Static Files
- Dynamic Data with Flask
- Using Static or Dynamic Delivery
- Summary
- 13. RESTful Data with Flask
- A RESTful, MongoDB API with Eve
- Delivering Data to the Nobel Prize Visualization
- RESTful SQL with Flask-Restless
- Summary
- Part V. Visualizing Your Data with D3
- 14. Imagining a Nobel Visualization
- Who Is It For?
- Choosing Visual Elements
- Menu Bar
- Prizes by Year
- A Map Showing Selected Nobel Countries
- A Bar Chart Showing Number of Winners by Country
- A List of the Selected Winners
- The Complete Visualization
- Summary
- 15. Building a Visualization
- Preliminaries
- The HTML Skeleton
- CSS Styling
- The JavaScript Engine
- Running the Nobel Prize Visualization App
- Summary
- 16. Introducing D3-The Story of a Bar Chart
- Framing the Problem
- Working with Selections
- Adding DOM Elements
- Leveraging D3
- Measuring Up with D3's Scales
- Unleashing the Power of D3 with Data Binding
- The enter Method
- Accessing the Bound Data
- The Update Pattern
- Axes and Labels
- Transitions
- Summary
- 17. Visualizing Individual Prizes
- Building the Framework
- Scales
- Axes
- Category Labels
- Nesting the Data
- Adding the Winners with a Nested Data-Join
- A Little Transitional Sparkle
- Summary
- 18. Mapping with D3
- Available Maps
- D3's Mapping Data Formats
- D3 Geo, Projections, and Paths
- Putting the Elements Together
- Updating the Map
- Adding Value Indicators
- Our Completed Map
- Building a Simple Tooltip
- Summary
- 19. Visualizing Individual Winners
- Building the List
- Building the Bio-Box
- Summary
- 20. The Menu Bar
- Creating HTML Elements with D3
- Building the Menu Bar
- Summary
- 21. Conclusion
- Recap
- Future Progress
- Final Thoughts
- A. Moving from Development to Production
- Index