Lets-Plot for Kotlin
Latest Lets-Plot Kotlin API Version | |
Latest Lets-Plot Version | |
License |
Lets-Plot for Kotlin is a Kotlin API for the Lets-Plot library - an
open-source plotting library for statistical data,
which is built on the principles of layered graphics first described in the Leland Wilkinson
work The Grammar of Graphics.
Lets-Plot Kotlin API is largely based on the API To learn more about the Grammar of Graphics, This will be a good prerequisite for further exploration of the Lets-Plot library. |
Quickstart
Inside Kotlin Notebook, Datalore or Jupyter with Kotlin Kernel:
%use lets-plot
val rand = java.util.Random()
val data = mapOf(
"rating" to List(200) { rand.nextGaussian() } + List(200) { rand.nextGaussian() * 1.5 + 1.5 },
"cond" to List(200) { "A" } + List(200) { "B" }
)
var p = letsPlot(data)
p += geomDensity(color = "dark_green", alpha = .3) { x = "rating"; fill = "cond" }
p + ggsize(700, 350)
See the "Quickstart" notebook in Datalore or Jupyter nbviewer.
Table of Contents
Lets-Plot in Notebook
"Line Magics"
Include all the necessary Lets-Plot boilerplate code to a notebook using the following "line magic":
%use lets-plot
This will apply the lets-plot library descriptor
bundled with the Kotlin Jupyter Kernel installed in your environment.
The %useLatestDescriptors
line magic will force Kotlin Kernel to pull and apply all the latest
library descriptors
from the Kotlin Jupyter Libraries repository.
You can override lets-plot library descriptor
settings using the lets-plot line magic parameters:
%use lets-plot(api=1.1.0, lib=1.5.4, js=1.5.4, isolatedFrame=false)
api
- the version of Lets-Plot Kotlin API.lib
- the version of Lets-Plot library (JAR-s).js
- the version of Lets-PLot JavaScript bundle.isolatedFrame
- Iffalse
: load JS just once per notebook (default in Jupyter). Iftrue
: include Lets-Plot JS in each output (default in Datalore notebooks).
Lets-Plot in JVM and Kotlin/JS Application
To learn more about creating plots in JVM or Kotlin/JS environment read LPK_APP.md.
In the lets-plot-mini-apps GitHub repository you will find examples of using Lets-Plot Kotlin API in JVM and Kotlin/JS projects.
Documentation
-
A quick introduction to the Grammar of Graphics and Lets-Plot Kotlin API: Lets-Plot Usage Guide
-
Lets-Plot Kotlin API docs: docs/README.md
-
Lets-Plot Kotlin API reference: https://lets-plot.org/kotlin
-
The "Example Notebooks" reference: examples.md
-
Example notebooks in the Binder: mybinder.org
What is new in 4.4.0
stroke
and linewidth
Aesthetics See: example notebook.
See also geomLollipop()
example below.
Lollipop Plot
See: example notebook.
Horizontal error bars and vertical "dodge"
See: example notebook.
Multi-line Labels in Legends
See: example notebook.
geomImshow()
Colorbar in Other improvements and fixes
See CHANGELOG.md for details.
Migrating from v3 to v4
For migration instructions see Migrating to 4.0.0 section in the CHANGELOG.
Change Log
See CHANGELOG.md.
Code of Conduct
This project and the corresponding community are governed by the JetBrains Open Source and Community Code of Conduct. Please make sure you read it.
License
Code and documentation released under the MIT license. Copyright © 2019-2023, JetBrains s.r.o.