When to use it
Preserve missing measurements as null and provide a zero-inclusive domain. The application owns row ordering.
Compare two measurements per category with connected dots.
Native example
Preserve missing measurements as null and provide a zero-inclusive domain. The application owns row ordering.
LumenDumbbellChart(
data = listOf(
LumenComparisonDatum("design", "Design", value = 88.0, reference = 62.0),
LumenComparisonDatum("support", "Support", value = 74.0, reference = 81.0)
),
label = "Team scores, previous and current quarter",
domain = 0.0..100.0,
heading = "Progress by team",
referenceLabel = "Previous",
valueLabel = "Current"
)Reference
The primary shared and platform-specific options exposed by LumenDumbbellChart.
| API | Values or type | Default | Description |
|---|---|---|---|
| data | LumenComparisonDatum[] | Required | Unique id, category label, nullable finite value, optional reference and tone. Input order is preserved. |
| label, heading, description | String | label required | Provides the accessible name and optional visible context. |
| domain | Finite numeric range | Automatic | Includes zero and all displayed measurements. React Native uses { min, max }; SwiftUI and Compose use closed ranges. |
| valueLabel, labels | Localized chart labels | English | Names the measure and localizes empty, missing, invalid, and disclosure text. DumbbellChart also accepts referenceLabel (Before). |
| formatValue / labels.formatValue | Number formatter | Platform default | React Native accepts formatValue; SwiftUI and Compose use labels.formatValue. |
| showData | Boolean | true | Provides the expandable exact values. |
Native behavior
Preserve missing measurements as null and provide a zero-inclusive domain. The application owns row ordering.
Keeps exact values available and uses filled and outlined dots for paired measurements.
Shared component