Charting and visualization libraries for Java, Kotlin and Scala, used in desktop applications, server-side chart generation and data science notebooks.

By GitHub stars, the most popular JVM charting libraries here are XChart (1.6K stars), JFreeChart (1.4K stars), and Kandy (746 stars). 2 of 4 had commits in the last 90 days.

Java, Kotlin & Scala visualization libraries, ranked by GitHub stars
1 XChart

Lightweight Java library for plotting data.

1.6K 307 Apache-2.0
2 JFreeChart Inactive

2D chart library for Java applications using Swing, JavaFX or server-side rendering.

1.4K 0 LGPL-2.1
3 Kandy

Kotlin plotting library with a typed DSL, developed by JetBrains.

746 49 Apache-2.0
4 Lets-Plot for Kotlin

Grammar of graphics plotting API for Kotlin, built on Lets-Plot.

487 129 MIT

Head-to-head comparisons

Related categories

Frequently asked questions

What is the most popular JVM charting library?

By GitHub stars, XChart is the most popular, with 1.6K stars, followed by JFreeChart (1.4K) and Kandy (746).

Which JVM charting libraries are actively maintained?

3 of the 4 tools listed had commits in the last 12 months, including XChart, Kandy, and Lets-Plot for Kotlin. Each tool page shows monthly commit activity.

Are these JVM charting libraries free and open source?

4 of the 4 tools listed use an OSI-approved open-source license. The most common license here is Apache-2.0.

Missing a tool? Add it with a one-line pull request to the README.