
Build interactive charts and plots with customizable elements, including pie, line, bar, and radar charts. Features composable components, zoom/pan functionality, and flexible chart layouts.
Koala Plot is a Compose Multiplatform based charting and plotting library allowing you to build great looking interactive charts for Android, desktop, ios, and web using a single API and code base.
Try out the web version of the samples for a quick look at the possibilities when using Koala Plot.
This project is in a developmental state but several plot types are available and stable. We encourage you to give it a try, make suggestions for improvement, and even contribute! It is expected that the API surface and functionality will change as we gain experience using the library in applications. API and binary compatibility might not be maintained between 0.x releases, but we strive to maintain API compatibility between minor versions.
Most elements of a plot are Composables and can therefore be easily customized. This includes things like colors, fonts, borders, shapes, user interaction, etc.
repositories {
mavenCentral()
}dependencies {
implementation("io.github.koalaplot:koalaplot-core:0.11.0")
}You can also see a complete example of a build.gradle.kts in the samples.
BulletGraphs {
bullet(FloatLinearAxisModel(0f..300f)) {
label {
Column(
horizontalAlignment = Alignment.End,
modifier = Modifier.padding(end = KoalaPlotTheme.sizes.gap)
) {
Text("Revenue 2005 YTD", textAlign = TextAlign.End)
Text(
"(US $ in thousands)",
textAlign = TextAlign.End,
style = MaterialTheme.typography.labelSmall
)
}
}
axis { labels { Text("${it.toInt()}") } }
comparativeMeasure(260f)
featuredMeasureBar(275f)
ranges(0f, 200f, 250f, 300f)
}
}Also see the sample repository for code examples.
Contributions are welcome. Further details can be found in the Contributing Guidelines
Koala Plot is a Compose Multiplatform based charting and plotting library allowing you to build great looking interactive charts for Android, desktop, ios, and web using a single API and code base.
Try out the web version of the samples for a quick look at the possibilities when using Koala Plot.
This project is in a developmental state but several plot types are available and stable. We encourage you to give it a try, make suggestions for improvement, and even contribute! It is expected that the API surface and functionality will change as we gain experience using the library in applications. API and binary compatibility might not be maintained between 0.x releases, but we strive to maintain API compatibility between minor versions.
Most elements of a plot are Composables and can therefore be easily customized. This includes things like colors, fonts, borders, shapes, user interaction, etc.
repositories {
mavenCentral()
}dependencies {
implementation("io.github.koalaplot:koalaplot-core:0.11.0")
}You can also see a complete example of a build.gradle.kts in the samples.
BulletGraphs {
bullet(FloatLinearAxisModel(0f..300f)) {
label {
Column(
horizontalAlignment = Alignment.End,
modifier = Modifier.padding(end = KoalaPlotTheme.sizes.gap)
) {
Text("Revenue 2005 YTD", textAlign = TextAlign.End)
Text(
"(US $ in thousands)",
textAlign = TextAlign.End,
style = MaterialTheme.typography.labelSmall
)
}
}
axis { labels { Text("${it.toInt()}") } }
comparativeMeasure(260f)
featuredMeasureBar(275f)
ranges(0f, 200f, 250f, 300f)
}
}Also see the sample repository for code examples.
Contributions are welcome. Further details can be found in the Contributing Guidelines