Learning IPython for Interactive Computing and Data Visualization: Learn IPython for interactive Python programming,
high-performance numerical computing, and data
visualization
Download
Introduction
You are a programmer using Python as a scripting language, maybe for software
development. Learning IPython will let you use Python interactively in a highly
efficient way, for example, when exploring algorithms or analyzing data. In addition,
it is the best way to be introduced to the most advanced capabilities of the platform,
namely numerical computing, interactive visualization, and parallel programming
What this book covers
Chapter 1, Getting Started with IPython, is a short, hands-on introduction to the key
features of IPython. It will give you a broad overview of what IPython offers. All
features introduced in this chapter will be covered in the subsequent chapters.
Chapter 2, Interactive Work with IPython, will show you how to use Python
interactively from the IPython command-line interface, and how the numerous magic
commands will help you considerably improve your productivity. This chapter will
also introduce you to the IPython notebook, a modern tool for reproducible and
collaborative interactive programming.
Chapter 3, Numerical Computing with IPython, contains an introduction to the numerical
computing features of Numpy and Pandas, which can be conveniently used from
IPython. These tools are essential as soon as you need to analyze large amounts of
data, or more generally when you need to perform efficient numerical computations.
Chapter 4, Interactive Plotting and Graphical Interfaces, covers the graphical capabilities
of Matplotlib, and shows how they integrate smoothly in IPython. Matplotlib is a
very powerful graphical library, which allows you to either generate high-quality
figures or to visualize data interactively.
Chapter 5, High-Performance and Parallel Computing, is an advanced chapter detailing
various ways by which you can accelerate your code, such as parallel computing
and dynamic C compilation. The former method consists in distributing tasks across
cores or computers, which is particularly easy to do with IPython. The latter method
lets you write code in a superset of Python (using the Cython library), which is then
dynamically compiled in C for dramatic speed improvements.
Chapter 6, Customizing IPython, shows you how you can customize IPython, create
new magic commands, and use custom representations in the IPython notebook.
What you need for this book
This book assumes familiarity with the Python language. In addition, you will need
to have a Python installation on your computer (Windows, OS X, or Linux). You will
also need to install IPython as well as a few other external libraries. The installation
procedures are detailed in Chapter 1, Getting Started with IPython.
Who this book is for
This book is intended for Python programmers who want to learn IPython for the
advanced console, the notebook, and the interactive computing facilities offered
by the platform. Students, hackers, scientists, and hobbyists who are interested in
interactive computing, data analysis, and visualization will also be interested in this
book, but will need to learn the basics of Python first. Fortunately, Python is a very
accessible language, and a lot of books, courses, and tutorials are available.