Top 8 Julia Libraries For Data Visualisation

Julia is a preferred language for data science, artificial intelligence, and modeling and simulation applications. The language combines the ease of use of Python and R with the speed of C++, while providing parallel computing capabilities out of the box.

Here are eight popular data visualisation libraries in Julia language.

(The list is in alphabetical order)

1| GadFly.jl

About: GadFly.jl is a popular statistical plotting and data visualisation library written in Julia. The library is influenced by the native Grammar of Graphics Plotting (GGPlot) library and is well suited to 2D statistical plots and more. The features of this library are-

  • The library renders the publication-quality graphics to PDF, PNG, SVG as well as Postscript.
  • It provides an intuitive as well as consistent plotting interface
  • The library works with Jupyter notebooks via IJulia 
  • It provides light integration with DataFrames.jl
  • Supports an extended number of common plot types

Know more here.

2| Google Charts

About: Google Charts.jl is a Julia interface to Google Charts. A Google chart involves basically four steps, which include a specification of chart options as well as Google DataTable, a call to make the type of chart desired and a call to draw the chart. This package allows a number of functions to be done within Julia by-

  • It helps in mapping DataFrame objects into Google DataTable.
  • It provides mapping a Dict of options into a JSON object of chart options. 
  • The package provides several constructors to make the type of chart, among others.

Know more here.

3| Makie.jl

About: Makie.jl​ is a ​popular plotting library for Julia, that provides an interface for ​GLVisualize​, with emphasis on interactivity and speed. It is a high-performance, extendable, and multi-platform plotting ecosystem for the Julia programming language. One of the popular features of this library is that it utilises Observables that make it easy to write visualisations, which can be updated dynamically with new data. An Observable is a container object which notifies all its listeners whenever its content changes.

Know more here.

4| Plots.jl

About: Plots is a popular plotting API and toolset. Plots.jl is a plotting metapackage, which is basically an interface over many different plotting libraries. In Plots.jl, every column is a series, i.e. a set of related points which form lines, surfaces, or other plotting primitives. Some of the feature of Plots.jl are-

  • Concise: Less code and more efficient development/analysis.
  • Flexible: Produce favorite plots from favorite packages in a quicker and simpler way.
  • Consistent: No need to commit to one graphics package, use the same code everywhere.
  • Lightweight: Very few dependencies.

Know more here.

5| PyPlot.jl

About: PyPlot.jl provides a Julia interface to the Matplotlib plotting library from Python, and specifically to the matplotlib.pyplot module. PyPlot uses the Julia PyCall package to call Matplotlib directly from Julia with little or no overhead. This package takes advantage of Julia’s multimedia I/O API to display plots in any Julia graphical backend, including as inline graphics in IJulia. 

Know more here.

6| PGFPlotsX.jl

About: PGFPlotsX is a Julia package to generate publication quality figures using the LaTeX library PGFPlots.It draws high-quality function plots in normal or logarithmic scaling with

a user-friendly interface directly in TEX.  It supports line plots, scatter plots, piecewise constant plots, bar plots, area plots, mesh and surface plots, patch plots, contour plots, quiver plots, histogram plots, box plots, polar axes, ternary diagrams, smith charts and more. 

 Some of the features of this package are –

  • Showing figures inline in Jupyter notebooks, Juno and VSCode-julia. Both png- and svg-figures can be shown.
  • Exporting to tex, pdf, svg, and png, file formats.
  • Customising the preamble so that commands from latex packages can be used.
  • Extra functionality when different packages are loaded, for example Colors, DataFrames, Contour etc.

Know more here.

7| UnicodePlots.jl

About: UnicodePlots.jl is an advanced Unicode plotting library designed for use in Julia’s REPL. Using this library, one can generate plots like scatterplot, lineplot, barplot, histogram, boxplot, density plot and heat map.  

Know more here.

8| VegaLite.jl

About: VegaLite.jl is a plotting package for the julia programming language. It is based on Vega-Lite, which extends a traditional grammar of graphics API into a grammar of interactive graphics. It allows users to create a wide range of statistical plots. 

Know more here.

Download our Mobile App

Ambika Choudhury
A Technical Journalist who loves writing about Machine Learning and Artificial Intelligence. A lover of music, writing and learning something out of the box.

Subscribe to our newsletter

Join our editors every weekday evening as they steer you through the most significant news of the day.
Your newsletter subscriptions are subject to AIM Privacy Policy and Terms and Conditions.

Our Recent Stories

Our Upcoming Events

3 Ways to Join our Community

Telegram group

Discover special offers, top stories, upcoming events, and more.

Discord Server

Stay Connected with a larger ecosystem of data science and ML Professionals

Subscribe to our Daily newsletter

Get our daily awesome stories & videos in your inbox
How Generative AI is Revolutionising Data Science Tools

How Generative AI is Revolutionising Data Science Tools

Einblick Prompt enables users to create complete data workflows using natural language, accelerating various stages of data science and analytics. Einblick has effectively combined the capabilities of a Jupyter notebook with the user-friendliness of ChatGPT.