JetBrains / lets-plot-skia

Skia frontend for Lets-Plot multiplatform plotting library.
MIT License
141 stars 2 forks source link
android charts compose-multiplatform ggplot kotlin kotlin-android plotting swing

Lets-Plot Skia Frontend

Experimental JetBrains incubator project License MIT Latest Release

Lets-Plot Skia Frontend is a Kotlin Multiplatform library that allows you to embed \ Lets-Plot charts in a Compose Multiplatform or Java Swing application.

Supported Targets

Splash

Dependencies

See release notes for the latest version of the dependencies: v2.0.0

Compose Desktop

dependencies {
    ...

    // Lets-Plot Kotlin API 
    implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.8.0")

    // Lets-Plot Multiplatform 
    implementation("org.jetbrains.lets-plot:lets-plot-common:4.4.1")
    implementation("org.jetbrains.lets-plot:platf-awt:4.4.1")

    // Lets-Plot Skia Frontend
    implementation("org.jetbrains.lets-plot:lets-plot-compose:1.0.4")
}

See example: Compose desktop demo.

Compose Android

dependencies {
    ...

    implementation("org.jetbrains.skiko:skiko-android:0.8.4")

    // Lets-Plot Kotlin API 
    implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.8.0")

    // Lets-Plot Multiplatform 
    implementation("org.jetbrains.lets-plot:lets-plot-common:4.4.1")

    // Lets-Plot Skia Frontend
    implementation("org.jetbrains.lets-plot:lets-plot-compose:1.0.4")
}

See example: Android minimal demo.

Java Swing

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.8.0")

    // Lets-Plot Multiplatform 
    implementation("org.jetbrains.lets-plot:lets-plot-common:4.4.1")
    implementation("org.jetbrains.lets-plot:platf-awt:4.4.1")

    // Lets-Plot Skia Frontend
    implementation("org.jetbrains.lets-plot:lets-plot-swing-skia:1.0.4")
}

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.

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 © 2023-2024, JetBrains s.r.o.