// the find
PhilJay/MPAndroidChart
A powerful 🚀 Android chart view / graph view library, supporting line- bar- pie- radar- bubble- and candlestick charts as well as scaling, panning and animations.
MPAndroidChart is Android's long-running charting library, rewritten from Java to Kotlin for v4.0 with nine chart types, a Jetpack Compose module alongside the classic View API, and a property-based configuration style. It's for any Android or Compose app that needs line/bar/pie/radar/bubble/candlestick charts without pulling in a web view or a much heavier plotting dependency.
The Compose module is a real first-class addition, not a thin wrapper — it exposes its own ChartState with selection, viewport and animation hooks, and ships with its own test suite (ChartComposableTest, ChartRecreateTest) separate from the View-based tests. The 4.0 rewrite deliberately kept 3.x on its old artifact coordinates so existing apps don't silently break on upgrade — a detail a lot of major-version rewrites get wrong. There's an actual device test module (MPChartDeviceTest) doing things like leak detection, decimation correctness and hostile-input handling against a real Canvas, which is more rigor than most charting libs bother with.
Distribution is JitPack-only, not Maven Central — first builds after a new release are the usual JitPack crapshoot (slow or failed artifact builds), which is a real tax for a dependency this widely used. The full documentation and generated KDoc API reference live entirely off-GitHub on the author's personal site (philjay.cc), with no mirrored copy in the repo, so the project's usability depends on a domain outside its own infrastructure. The Compose module requires compileSdk 37, which is bleeding-edge even by Compose standards and will create friction for apps not already tracking the newest AGP/Compose releases. The README spends a notable chunk of space promoting the author's unrelated macOS screenshot tool before getting to the library itself.