https://github.com/jetbrains/lets-plot-skia
Skia frontend for Lets-Plot multiplatform plotting library.
https://github.com/jetbrains/lets-plot-skia
android charts compose-multiplatform ggplot kotlin kotlin-android plotting swing
Last synced: 10 months ago
JSON representation
Skia frontend for Lets-Plot multiplatform plotting library.
- Host: GitHub
- URL: https://github.com/jetbrains/lets-plot-skia
- Owner: JetBrains
- License: mit
- Created: 2022-11-28T21:00:21.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-03-31T21:48:43.000Z (10 months ago)
- Last Synced: 2025-04-05T06:04:02.175Z (10 months ago)
- Topics: android, charts, compose-multiplatform, ggplot, kotlin, kotlin-android, plotting, swing
- Language: Kotlin
- Homepage:
- Size: 54.2 MB
- Stars: 161
- Watchers: 5
- Forks: 4
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Lets-Plot Skia Frontend
[](https://kotlinlang.org/docs/components-stability.html)
[](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
[](https://raw.githubusercontent.com/JetBrains/lets-plot-skia/master/LICENSE)
[](https://github.com/JetBrains/lets-plot-skia/releases/latest)
**Lets-Plot Skia Frontend** is a Kotlin Multiplatform library that allows you to embed \
[Lets-Plot](https://github.com/JetBrains/lets-plot) charts in a [Compose Multiplatform](https://github.com/JetBrains/compose-multiplatform) or Java Swing application.
### Supported Targets
- **Compose Desktop** (macOS, Windows, Linux)\
For more information see [Compose multiplatform compatibility and versioning overview](https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-compatibility-and-versioning.html).
- **Android** (`lets-plot-skia` <= v2.0.0. New versions temporarily don't support Android due to [SKIKO-761](https://youtrack.jetbrains.com/issue/SKIKO-761))
- **Java Swing**

## Dependencies
See release notes for the latest version of the dependencies: [v2.1.1](https://github.com/JetBrains/lets-plot-skia/releases/tag/v2.1.1)
### Compose Desktop
```kotlin
dependencies {
...
// Lets-Plot Kotlin API
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.9.3")
// Lets-Plot Multiplatform
implementation("org.jetbrains.lets-plot:lets-plot-common:4.5.2")
implementation("org.jetbrains.lets-plot:platf-awt:4.5.2")
// Lets-Plot Skia Frontend
implementation("org.jetbrains.lets-plot:lets-plot-compose:2.1.1")
}
```
See example: [Compose desktop](https://github.com/JetBrains/lets-plot-compose-demos/blob/main/compose-desktop/build.gradle.kts) demo.
### Compose Android
#### Note: the latest supported version is `lets-plot-skia` v2.0.0. The new versions temporarily don't support Android due to [SKIKO-761](https://youtrack.jetbrains.com/issue/SKIKO-761).
```kotlin
dependencies {
...
implementation("org.jetbrains.skiko:skiko-android:0.8.4")
// Lets-Plot Kotlin API
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.9.3")
// Lets-Plot Multiplatform
implementation("org.jetbrains.lets-plot:lets-plot-common:4.5.2")
// Lets-Plot Skia Frontend
implementation("org.jetbrains.lets-plot:lets-plot-compose:2.0.0")
}
```
See example: [Android minimal](https://github.com/JetBrains/lets-plot-compose-demos/blob/main/compose-android-min/build.gradle.kts) demo.
### Java Swing
```kotlin
dependencies {
...
implementation("org.jetbrains.skiko:skiko:0.8.4")
// The host OS and architecture should be specified explicitly.
implementation("org.jetbrains.skiko:skiko-awt-runtime-macos-x64:0.8.4")
// Lets-Plot Kotlin API
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.9.3")
// Lets-Plot Multiplatform
implementation("org.jetbrains.lets-plot:lets-plot-common:4.5.2")
implementation("org.jetbrains.lets-plot:platf-awt:4.5.2")
// Lets-Plot Skia Frontend
implementation("org.jetbrains.lets-plot:lets-plot-swing-skia:2.1.1")
}
```
## Examples
You will find complete examples of using **Lets-Plot Kotlin API** with **Lets-Plot Skia Frontend** in the following\
GitHub repository: [JetBrains/lets-plot-compose-demos](https://github.com/JetBrains/lets-plot-compose-demos).
## Change Log
See [CHANGELOG.md](https://github.com/JetBrains/lets-plot-skia/blob/master/CHANGELOG.md).
## Code of Conduct
This project and the corresponding community are governed by the
[JetBrains Open Source and Community Code of Conduct](https://confluence.jetbrains.com/display/ALL/JetBrains+Open+Source+and+Community+Code+of+Conduct).
Please make sure you read it.
## License
Code and documentation released under
the [MIT license](https://github.com/JetBrains/lets-plot-skia/blob/master/LICENSE).
Copyright © 2023-2025, JetBrains s.r.o.