Book Image

Interactive Visualization and Plotting with Julia

By : Diego Javier Zea
Book Image

Interactive Visualization and Plotting with Julia

By: Diego Javier Zea

Overview of this book

The Julia programming language offers a fresh perspective into the data visualization field. Interactive Visualization and Plotting with Julia begins by introducing the Julia language and the Plots package. The book then gives a quick overview of the Julia plotting ecosystem to help you choose the best library for your task. In particular, you will discover the many ways to create interactive visualizations with its packages. You’ll also leverage Pluto notebooks to gain interactivity and use them intensively through this book. You’ll find out how to create animations, a handy skill for communication and teaching. Then, the book shows how to solve data analysis problems using DataFrames and various plotting packages based on the grammar of graphics. Furthermore, you’ll discover how to create the most common statistical plots for data exploration. Also, you’ll learn to visualize geographically distributed data, graphs and networks, and biological data. Lastly, this book will go deeper into plot customizations with Plots, Makie, and Gadfly—focusing on the former—teaching you to create plot themes, arrange multiple plots into a single figure, and build new plot types. By the end of this Julia book, you’ll be able to create interactive and publication-quality static plots for data analysis and exploration tasks using Julia.
Table of Contents (19 chapters)
1
Section 1 – Getting Started
6
Section 2 – Advanced Plot Types
12
Section 3 – Mastering Plot Customization

Preface

Plotting and visualizing data is an everyday skill for researchers and data scientists that is helpful for discovering and communicating insights. Additionally, adding interactivity to our visualization tasks enhances data exploration steps. At the same time, interactive visualizations and animations allow us to share more compelling stories from data. This book will teach you how to perform such tasks using the Julia programming language and the packages in its ecosystem.

The Julia plotting ecosystem is a breath of fresh air for plotting and data visualization, a new ecosystem to explore. This book will guide you through that exploration. First, it will introduce you to the basics of Julia and the Plots package. This package allows you to write plotting specifications that you can later render using different backends without changing your code. For example, you can render the same plot using Plotly for JavaScript-based interactivity or PGFPlotsX for generating a LaTeX-based publication-quality output. These are only two examples; in this book, we will discuss the different backends and learn how to choose the most appropriate for your task. Then, the book will also introduce you to Makie. This plotting library shines because of its native interactivity support and GPU-powered three-dimensional plots. Another interesting feature of those plotting packages is their extensibility. Plots and Makie offer recipe systems to allow us to create new plot types and specify how to display data types. The Julia package ecosystem intensively uses these recipes to define the different visualizations we will explore in the book’s second part, for example, to create classical statistical plots and visualize networks and geographically distributed data. Finally, in the book’s third part, we will present the aspects needed to customize your plots to make them look as you wish. In that section, we will explore another key feature of Plots and Makie: their powerful layout system. Those systems allow for programmatically creating plot panels and figures in an easy way.

By the end of this book, you will be able to visualize data and create interactive plots with Julia. You will know how to make classical plots and develop new plot types that best suit your use case.