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

Writing plotting recipes for Makie

Makie also offers a lightweight recipe system thanks to the MakieCore package. This package only depends on the Observables package to allow interactivity. As of MakieCore version 0.3.5, Makie provides two kinds of recipes: type and full recipes. Type recipes in Makie are similar to the ones of Plots, as they can convert a user-defined type into something Makie can plot. They also allow us to specify the default plot type for that custom type. Full recipes in Makie, on the other hand, are like Plots’ series recipes. Makie uses this full recipe to define many plot types, such as hlines and vlines. Sadly, they do not offer a high-level API to control the plot layout as Plots’ plot recipes do.

Type recipes are defined thanks to the convert_arguments function. When Makie calls the plot function with an unknown type, it will try to convert it into something it can plot by calling that function using a PlotType; for example, Scatter, in...