Mastering matplotlib
eBook - ePub

Mastering matplotlib

  1. 292 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Mastering matplotlib

Trusted by 375,005 students

Access to over 1 million titles for a fair monthly price.

Study more efficiently using our study tools.

Mastering matplotlib


Table of Contents

Mastering matplotlib
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Downloading the color images of this book
Errata
Piracy
Questions
1. Getting Up to Speed
A brief historical overview of matplotlib
What's new in matplotlib 1.4
The intermediate matplotlib user
Prerequisites for this book
Python 3
Coding style
Installing matplotlib
Using IPython Notebooks with matplotlib
Advanced plots – a preview
Setting up the interactive backend
Joint plots with Seaborn
Scatter plot matrix graphs with Pandas
Summary
2. The matplotlib Architecture
The original design goals
The current matplotlib architecture
The backend layer
FigureCanvasBase
RendererBase
Event
Visualizing the backend layer
The artist layer
Primitives
Containers
Collections
A view of the artist layer
The scripting layer
The supporting components of the matplotlib stack
matplotlib modules
Exploring the filesystem
Exploring imports visually
ModuleFinder
ModGrapher
The execution flow
An overview of the script
An interactive session
The matplotlib architecture as it relates to this book
Summary
3. matplotlib APIs and Integrations
The procedural pylab API
The pyplot scripting API
The matplotlib object-oriented API
Equations
Helper classes
The Plotter class
Running the jobs
matplotlib in other frameworks
An important note on IPython
Summary
4. Event Handling and Interactive Plots
Event loops in matplotlib
Event-based systems
The event loop
GUI toolkit main loops
IPython Notebook event loops
matplotlib event loops
Event handling
Mouse events
Keyboard events
Axes and figure events
Object picking
Compound event handling
The navigation toolbar
Specialized events
Interactive panning and zooming
Summary
5. High-level Plotting and Data Analysis
High-level plotting
Historical background
matplotlib
NetworkX
Pandas
The grammar of graphics
Bokeh
The ŷhat ggplot
New styles in matplotlib
Seaborn
Data analysis
Pandas, SciPy, and Seaborn
Examining and shaping a dataset
Analysis of temperature
Analysis of precipitation
Summary
6. Customization and Configuration
Customization
Creating a custom style
Subplots
Revisiting Pandas
Individual plots
Bringing everything together
Further explorations in customization
Configuration
The run control for matplotlib
File and directory locations
Using the matplotlibrc file
Updating the settings dynamically
Options in IPython
Summary
7. Deploying matplotlib in Cloud Environments
Making a use case for matplotlib in the Cloud
The data source
Defining a workflow
Choosing technologies
Configuration management
Types of deployment
An example – AWS and Docker
Getting set up locally
Requirements
Dockerfiles and the Docker images
Extending a Docker image
Building a new image
Preparing for deployment
Getting the setup on AWS
Pushing the source data to S3
Creating a host server on EC2
Using Docker on EC2
Reading and writing with S3
Running the task
Environment variables and Docker
Changes to the Python module
Execution
Summary
8. matplotlib and Big Data
Big data
Working with large data sources
An example problem
Big data on the filesystem
NumPy's memmap function
HDF5 and PyTables
Distributed data
MapReduce
Open source options
An example – working with data on EMR
Visualizing large data
Finding the limits of matplotlib
Agg rendering with matplotlibrc
Decimation
Additional techniques
Other visualization tools
Summary
9. Clustering for matplotlib
Clustering and parallel programming
The custom ZeroMQ cluster
Estimating the value of π
Creating the ZeroMQ components
Working with the results
Clustering with IPython
Getting started
The direct view
The load-balanced view
The parallel magic functions
An example – estimating the value of π
More clustering
Summary
Index

Mastering matplotlib

Copyright © 2015 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: June 2015
Production reference: 1250615
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-78398-754-2
www.packtpub.com

Credits

Author
Duncan M. McGreggor
Reviewers
Francesco Benincasa
Wen-Wei Liao
Nicolas P. Rougier
Dr. Allen Chi-Shing Yu
Acquisition ...

Table of contents

  1. Mastering matplotlib

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn how to download books offline
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 990+ topics, we’ve got you covered! Learn about our mission
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more about Read Aloud
Yes! You can use the Perlego app on both iOS and Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app
Yes, you can access Mastering matplotlib by Duncan M. McGreggor in PDF and/or ePUB format, as well as other popular books in Computer Science & Data Modelling & Design. We have over one million books available in our catalogue for you to explore.