MITB Banner

Top 7 Scala Libraries For Data Visualisation

Share

Scala is a popular language that runs on Java Virtual Machine (JVM). It is a pure object-oriented language designed to express common programming patterns in a concise, elegant, and type-safe way. Also, Scala provides a number of libraries and tools that can be used for several data science-related tasks.

Here, we have put together the top 7 data visualisation libraries in Scala language.

(The list is in no particular order)

1| Breeze-viz

About: Breeze-viz is a popular library for data visualisation in Scala. The library is based on JFreeChart and provides a Matlab-like way to create figures and plots. Breeze-viz is part of the git open source project scalanlp/breeze and it works hand and in hand with the breeze library. The latest release of this library is 0.5.1 

Know more here.

2| Vegas

About: Vegas is another popular data visualisation library in Scala, described as the missing MatPlotlib for Scala and Spark. The library basically wraps around Vega-Lite, which is a high-level grammar of interactive graphics. It provides a concise, declarative JSON syntax to create an expressive range of visualisations for data analysis and presentation. Vegas provides several options for rendering plots. The developers primarily use Vegas within interactive notebook environments, such as Jupyter and Zeppelin. 

Know more here.

3| SPlot

About: SPlot is Scala library for data visualisation. The goal of this library is to provide a simple API in Scala for data visualisation similar to ggplot and Seaborn as well as support exploratory data analysis (EDA). SPlot provides two APIs for displaying plots. The first API enriches Scala collections that provides additional methods for plotting charts and the second API provides possibility to independently provide x and y values. 

Know more here.

4| Doodle

About: Doodle is a data visualisation library in Scala for 2D graphics, animation, data visualisation as well as creative coding. It runs in both the JVM, rendering via Java2D, and the web browser using SVG. The main packages of Doodle are: core, which provides common utilities such as colors, points, and parametric curves; image; effect; syntax; animation and interaction; and interactive exploration. 

In order to use this library, add the following to your build.sbt

libraryDependencies += “org.creativescala” %% “doodle” % “0.9.20”

Know more here.

5| New Scala Plotting Library (NSPL)

About: New Scala Plotting Library is a 2D plotting library in Scala, and runs on the JVM or in the browser with minimal dependencies. This library renders the same plots for vector (pdf, svg, eps) and raster formats (png, jpg), java Graphics2D or Html5 Canvas. NSPL can be used to create scatter, line, contour, raster, barplots and boxplots, histograms, and density plots. The library has the ability to use streams of data without keeping them in memory, and thus can create plots from huge files to raster output.

Know more here.

6| Plotly Scala Library

About: Plotly Scala Library is a graphing library that makes interactive, publication-quality graphs online. The library can create interactive line plots, scatter plots, subplots, multiple-axes charts, among others. This Scala library can output JSON that can be passed to plotly.js and can cover a wide range of the plotly.js features.

Know more here.

7| EvilPlot 

About: EvilPlot is a combinator-based data visualization library written in Scala. The main objective of this library is to enable composed, principled, and infinitely customisable data visualisation without the need to cross from Scala into other languages like R or Python. The library offers a handful of ways to create simple plots, along with several combinators for making more complicated plots out of simpler ones. 

Know more here.

PS: The story was written using a keyboard.
Picture of Ambika Choudhury

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.
Related Posts

Download our Mobile App

CORPORATE TRAINING PROGRAMS ON GENERATIVE AI

Generative AI Skilling for Enterprises

Our customized corporate training program on Generative AI provides a unique opportunity to empower, retain, and advance your talent.

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
Recent Stories

Featured

Subscribe to The Belamy: Our Weekly Newsletter

Biggest AI stories, delivered to your inbox every week.

AI Courses & Careers

Become a Certified Generative AI Engineer

AI Forum for India

Our Discord Community for AI Ecosystem, In collaboration with NVIDIA. 

AIM Conference Calendar

Immerse yourself in AI and business conferences tailored to your role, designed to elevate your performance and empower you to accomplish your organization’s vital objectives. Revel in intimate events that encapsulate the heart and soul of the AI Industry.

Flagship Events

Rising 2024 | DE&I in Tech Summit

April 4 and 5, 2024 | 📍 Hilton Convention Center, Manyata Tech Park, Bangalore

MachineCon GCC Summit 2024

June 28 2024 | 📍Bangalore, India

MachineCon USA 2024

26 July 2024 | 583 Park Avenue, New York

Cypher India 2024

September 25-27, 2024 | 📍Bangalore, India

Cypher USA 2024

Nov 21-22 2024 | 📍Santa Clara Convention Center, California, USA

Data Engineering Summit 2024

May 30 and 31, 2024 | 📍 Bangalore, India

Download the easiest way to
stay informed