Docs Charts Isometric

IsoMountainChart

React example follows below.
ts
const isoMountainChartFixture = {
id: "iso-mountain-chart",
ariaLabel: "Hourly website sessions peaking at 412 thousand visits",
data: [
18, 14, 12, 11, 12, 16, 28, 46, 72, 98, 128, 162, 198, 236, 274, 312, 348, 378, 398, 412, 396,
354, 302, 248, 198, 152, 118, 92, 74, 58, 44, 32, 26, 22, 20, 18,
].map((value) => ({ value })),
peakLabel: "412k visits",
};
import { IsoMountainChart } from "@grassroot/charts-react";
export default function IsoMountainChartDemo() {
return (
<div>
<IsoMountainChart {...isoMountainChartFixture} />
</div>
);
}
ts
<script setup lang="ts">
const isoMountainChartFixture = {
id: "iso-mountain-chart",
ariaLabel: "Hourly website sessions peaking at 412 thousand visits",
data: [
18, 14, 12, 11, 12, 16, 28, 46, 72, 98, 128, 162, 198, 236, 274, 312, 348, 378, 398, 412, 396,
354, 302, 248, 198, 152, 118, 92, 74, 58, 44, 32, 26, 22, 20, 18,
].map((value) => ({ value })),
peakLabel: "412k visits",
};
import { IsoMountainChart } from "@grassroot/charts-vue";
</script>
<template><IsoMountainChart v-bind="isoMountainChartFixture" /></template>
ts
import { ChangeDetectionStrategy, Component } from "@angular/core";
const isoMountainChartFixture = {
id: "iso-mountain-chart",
ariaLabel: "Hourly website sessions peaking at 412 thousand visits",
data: [
18, 14, 12, 11, 12, 16, 28, 46, 72, 98, 128, 162, 198, 236, 274, 312, 348, 378, 398, 412, 396,
354, 302, 248, 198, 152, 118, 92, 74, 58, 44, 32, 26, 22, 20, 18,
].map((value) => ({ value })),
peakLabel: "412k visits",
};
import { GrassrootIsoMountainChart } from "@grassroot/charts-angular";
@Component({
selector: "app-iso-mountain-chart-demo",
standalone: true,
imports: [GrassrootIsoMountainChart],
changeDetection: ChangeDetectionStrategy.OnPush,
template: `<grassroot-iso-mountain-chart
[data]="fixture.data"
[ariaLabel]="fixture.ariaLabel"
[peakLabel]="fixture.peakLabel"
/>`,
})
export class IsoMountainChartDemoComponent {
readonly fixture = isoMountainChartFixture;
}
export default IsoMountainChartDemoComponent;
ts
<script lang="ts">
const isoMountainChartFixture = {
id: "iso-mountain-chart",
ariaLabel: "Hourly website sessions peaking at 412 thousand visits",
data: [
18, 14, 12, 11, 12, 16, 28, 46, 72, 98, 128, 162, 198, 236, 274, 312, 348, 378, 398, 412, 396,
354, 302, 248, 198, 152, 118, 92, 74, 58, 44, 32, 26, 22, 20, 18,
].map((value) => ({ value })),
peakLabel: "412k visits",
};
import { IsoMountainChart } from "@grassroot/charts-svelte";
</script>
<IsoMountainChart {...isoMountainChartFixture} />
ts
/** @jsxImportSource solid-js */
const isoMountainChartFixture = {
id: "iso-mountain-chart",
ariaLabel: "Hourly website sessions peaking at 412 thousand visits",
data: [
18, 14, 12, 11, 12, 16, 28, 46, 72, 98, 128, 162, 198, 236, 274, 312, 348, 378, 398, 412, 396,
354, 302, 248, 198, 152, 118, 92, 74, 58, 44, 32, 26, 22, 20, 18,
].map((value) => ({ value })),
peakLabel: "412k visits",
};
import { IsoMountainChart } from "@grassroot/charts-solid";
export default function IsoMountainChartDemo() {
return <IsoMountainChart {...isoMountainChartFixture} />;
}

Installation

API Reference

Import

import { IsoMountainChart } from "@grassroot/charts-react";

Props

Prop
Type
Default
Requirement
Description
data
readonly IsoMountainDatum[]
—
required
—
peakLabel
string | undefined
—
optional
Label rendered at the series peak (defaults to the rounded max value).
legend
boolean | import("@grassroot/chart-spec").LegendConfig | undefined
—
optional
—
tooltip
boolean | import("./base").ExpandedChartTooltipConfig<unknown> | undefined
—
optional
—
animation
boolean | import("./base").ExpandedChartAnimationConfig | undefined
—
optional
—
onHiddenSeriesChange
((ids: readonly string[]) => void) | undefined
—
optional
—
onActiveDatumChange
((id: string | null) => void) | undefined
—
optional
—
renderer
import("@grassroot/core").ChartRenderer | undefined
—
optional
—
className
string | undefined
—
optional
—
theme
import("@grassroot/theme").PartialChartTheme | undefined
—
optional
—
title
string | undefined
—
optional
—
description
string | undefined
—
optional
—
ariaLabel
string | undefined
—
optional
—
keyboardNavigation
boolean | undefined
—
optional
—
Prop
data
Type
readonly IsoMountainDatum[]
Default
—
Requirement
required
Description
—
Prop
peakLabel
Type
string | undefined
Default
—
Requirement
optional
Description
Label rendered at the series peak (defaults to the rounded max value).
Prop
legend
Type
boolean | import("@grassroot/chart-spec").LegendConfig | undefined
Default
—
Requirement
optional
Description
—
Prop
tooltip
Type
boolean | import("./base").ExpandedChartTooltipConfig<unknown> | undefined
Default
—
Requirement
optional
Description
—
Prop
animation
Type
boolean | import("./base").ExpandedChartAnimationConfig | undefined
Default
—
Requirement
optional
Description
—
Prop
onHiddenSeriesChange
Type
((ids: readonly string[]) => void) | undefined
Default
—
Requirement
optional
Description
—
Prop
onActiveDatumChange
Type
((id: string | null) => void) | undefined
Default
—
Requirement
optional
Description
—
Prop
renderer
Type
import("@grassroot/core").ChartRenderer | undefined
Default
—
Requirement
optional
Description
—
Prop
className
Type
string | undefined
Default
—
Requirement
optional
Description
—
Prop
theme
Type
import("@grassroot/theme").PartialChartTheme | undefined
Default
—
Requirement
optional
Description
—
Prop
title
Type
string | undefined
Default
—
Requirement
optional
Description
—
Prop
description
Type
string | undefined
Default
—
Requirement
optional
Description
—
Prop
ariaLabel
Type
string | undefined
Default
—
Requirement
optional
Description
—
Prop
keyboardNavigation
Type
boolean | undefined
Default
—
Requirement
optional
Description
—
Prop
width
Type
number | undefined
Default
—
Requirement
optional
Description
—
Prop
height
Type
number | undefined
Default
—
Requirement
optional
Description
—
Prop
gpuBackend
Type
import("@grassroot/core").ChartGpuBackend | undefined
Default
—
Requirement
optional
Description
—
Prop
rendererStrategy
Type
Partial<import("@grassroot/core").ChartRendererStrategy> | undefined
Default
—
Requirement
optional
Description
—
Prop
renderPlanMode
Type
"svg" | "host" | undefined
Default
—
Requirement
optional
Description
—
Prop
showGrid
Type
boolean | undefined
Default
—
Requirement
optional
Description
—
Prop
interactive
Type
boolean | undefined
Default
—
Requirement
optional
Description
Gates every pointer/keyboard interaction the shell owns (hit-test on pointer move, focus-to-first, arrow navigation, Escape) and, with `keyboardNavigation`, whether the plot surface is focusable at all.
Prop
hiddenSeries
Type
readonly string[] | undefined
Default
—
Requirement
optional
Description
—
Prop
defaultHiddenSeries
Type
readonly string[] | undefined
Default
—
Requirement
optional
Description
—
Prop
activeDatum
Type
string | null | undefined
Default
—
Requirement
optional
Description
—
Prop
defaultActiveDatum
Type
string | null | undefined
Default
—
Requirement
optional
Description
Uncontrolled initial value for the `activeDatum`/`onActiveDatumChange` pair.
Prop
speed
Type
number | undefined
Default
—
Requirement
optional
Description
Playback-speed multiplier for entrance/ambient motion.
Prop
morphDurationMs
Type
number | undefined
Default
—
Requirement
optional
Description
How long a dataset change tweens, in milliseconds.
Prop
replayToken
Type
string | number | undefined
Default
—
Requirement
optional
Description
Changing this value replays the entrance animation.

Events

EventPayload
onHiddenSeriesChange((ids: readonly string[]) => void) | undefined
onActiveDatumChange((id: string | null) => void) | undefined

Content regions

  • dataSummary

Native attributes

Standard DOM and ARIA attributes not listed above spread onto the root element.

Import

import { IsoMountainChart } from "@grassroot/charts-vue";

Props

Prop
Type
Default
Requirement
data
readonly IsoMountainDatum[]
—
required
peakLabel
string | undefined
—
optional
width
number | undefined
—
optional
height
number | undefined
—
optional
showGrid
boolean | undefined
—
optional
ariaLabel
string | undefined
—
optional
title
string | undefined
—
optional
description
string | undefined
—
optional
className
string | undefined
—
optional
renderer
ChartRenderer | undefined
—
optional
gpuBackend
"auto" | "webgpu" | "webgl2" | undefined
—
optional
rendererStrategy
Partial<ChartRendererStrategy> | undefined
—
optional
renderPlanMode
"svg" | "host" | undefined
"host"
optional
theme
PartialChartTheme | undefined
—
optional
Prop
data
Type
readonly IsoMountainDatum[]
Default
—
Requirement
required
Prop
peakLabel
Type
string | undefined
Default
—
Requirement
optional
Prop
width
Type
number | undefined
Default
—
Requirement
optional
Prop
height
Type
number | undefined
Default
—
Requirement
optional
Prop
showGrid
Type
boolean | undefined
Default
—
Requirement
optional
Prop
ariaLabel
Type
string | undefined
Default
—
Requirement
optional
Prop
title
Type
string | undefined
Default
—
Requirement
optional
Prop
description
Type
string | undefined
Default
—
Requirement
optional
Prop
className
Type
string | undefined
Default
—
Requirement
optional
Prop
renderer
Type
ChartRenderer | undefined
Default
—
Requirement
optional
Prop
gpuBackend
Type
"auto" | "webgpu" | "webgl2" | undefined
Default
—
Requirement
optional
Prop
rendererStrategy
Type
Partial<ChartRendererStrategy> | undefined
Default
—
Requirement
optional
Prop
renderPlanMode
Type
"svg" | "host" | undefined
Default
"host"
Requirement
optional
Prop
theme
Type
PartialChartTheme | undefined
Default
—
Requirement
optional
Prop
animation
Type
ChartAnimationInput | undefined
Default
—
Requirement
optional
Prop
interactive
Type
boolean | undefined
Default
true
Requirement
optional
Prop
keyboardNavigation
Type
boolean | undefined
Default
true
Requirement
optional
Prop
tooltip
Type
boolean | TooltipBehaviorConfig | undefined
Default
true
Requirement
optional
Prop
legend
Type
boolean | LegendConfig | undefined
Default
false
Requirement
optional
Prop
hiddenSeries
Type
readonly string[] | undefined
Default
—
Requirement
optional
Prop
defaultHiddenSeries
Type
readonly string[] | undefined
Default
() => []
Requirement
optional
Prop
activeDatum
Type
string | null | undefined
Default
—
Requirement
optional
Prop
defaultActiveDatum
Type
string | null | undefined
Default
—
Requirement
optional
Prop
speed
Type
number | undefined
Default
—
Requirement
optional
Prop
morphDurationMs
Type
number | undefined
Default
—
Requirement
optional
Prop
replayToken
Type
string | number | undefined
Default
—
Requirement
optional

Events

EventPayload
hiddenSeriesChange[ids: readonly string[]]
activeDatumChange[id: string | null]

Content regions

  • dataSummary

Import

import { ChangeDetectionStrategy, Component } from "@angular/core";
import { GrassrootIsoMountainChart } from "@grassroot/charts-angular";

Props

Prop
Type
Default
Requirement
renderer
ChartRenderer
—
optional
gpuBackend
ChartGpuBackend
—
optional
rendererStrategy
Partial<ChartRendererStrategy>
—
optional
renderPlanMode
"svg" | "host"
"host"
optional
ariaLabel
string
—
optional
title
string
—
optional
description
string
—
optional
theme
PartialChartTheme
—
optional
animation
ChartAnimationInput
—
optional
interactive
boolean
true
optional
keyboardNavigation
boolean
true
optional
tooltip
boolean | TooltipBehaviorConfig
true
optional
legend
boolean | LegendConfig
—
optional
hiddenSeries
readonly string[]
—
optional
Prop
renderer
Type
ChartRenderer
Default
—
Requirement
optional
Prop
gpuBackend
Type
ChartGpuBackend
Default
—
Requirement
optional
Prop
rendererStrategy
Type
Partial<ChartRendererStrategy>
Default
—
Requirement
optional
Prop
renderPlanMode
Type
"svg" | "host"
Default
"host"
Requirement
optional
Prop
ariaLabel
Type
string
Default
—
Requirement
optional
Prop
title
Type
string
Default
—
Requirement
optional
Prop
description
Type
string
Default
—
Requirement
optional
Prop
theme
Type
PartialChartTheme
Default
—
Requirement
optional
Prop
animation
Type
ChartAnimationInput
Default
—
Requirement
optional
Prop
interactive
Type
boolean
Default
true
Requirement
optional
Prop
keyboardNavigation
Type
boolean
Default
true
Requirement
optional
Prop
tooltip
Type
boolean | TooltipBehaviorConfig
Default
true
Requirement
optional
Prop
legend
Type
boolean | LegendConfig
Default
—
Requirement
optional
Prop
hiddenSeries
Type
readonly string[]
Default
—
Requirement
optional
Prop
defaultHiddenSeries
Type
readonly string[]
Default
[]
Requirement
optional
Prop
activeDatum
Type
string | null
Default
—
Requirement
optional
Prop
defaultActiveDatum
Type
string | null
Default
null
Requirement
optional
Prop
speed
Type
number
Default
—
Requirement
optional
Prop
morphDurationMs
Type
number
Default
—
Requirement
optional
Prop
replayToken
Type
string | number
Default
—
Requirement
optional
Prop
width
Type
number
Default
—
Requirement
optional
Prop
height
Type
number
Default
—
Requirement
optional
Prop
showGrid
Type
boolean
Default
—
Requirement
optional
Prop
className
Type
string
Default
—
Requirement
optional
Prop
data
Type
readonly IsoMountainDatum[]
Default
—
Requirement
required
Prop
peakLabel
Type
string
Default
—
Requirement
optional

Events

EventPayload
activeDatumChangestring | null
hiddenSeriesChangereadonly string[]

Content regions

  • dataSummary

Import

import { IsoMountainChart } from "@grassroot/charts-svelte";

Props

Prop
Type
Default
Requirement
data
readonly IsoMountainDatum[]
—
required
peakLabel
string
—
optional
width
number
—
optional
height
number
—
optional
showGrid
boolean
—
optional
renderer
ChartRenderer
—
optional
gpuBackend
ChartGpuBackend
—
optional
rendererStrategy
Partial<ChartRendererStrategy>
—
optional
renderPlanMode
"svg" | "host"
—
optional
ariaLabel
string
—
optional
legend
boolean | LegendConfig
—
optional
tooltip
boolean | TooltipBehaviorConfig
—
optional
activeDatum
string | null
—
optional
defaultActiveDatum
string | null
—
optional
Prop
data
Type
readonly IsoMountainDatum[]
Default
—
Requirement
required
Prop
peakLabel
Type
string
Default
—
Requirement
optional
Prop
width
Type
number
Default
—
Requirement
optional
Prop
height
Type
number
Default
—
Requirement
optional
Prop
showGrid
Type
boolean
Default
—
Requirement
optional
Prop
renderer
Type
ChartRenderer
Default
—
Requirement
optional
Prop
gpuBackend
Type
ChartGpuBackend
Default
—
Requirement
optional
Prop
rendererStrategy
Type
Partial<ChartRendererStrategy>
Default
—
Requirement
optional
Prop
renderPlanMode
Type
"svg" | "host"
Default
—
Requirement
optional
Prop
ariaLabel
Type
string
Default
—
Requirement
optional
Prop
legend
Type
boolean | LegendConfig
Default
—
Requirement
optional
Prop
tooltip
Type
boolean | TooltipBehaviorConfig
Default
—
Requirement
optional
Prop
activeDatum
Type
string | null
Default
—
Requirement
optional
Prop
defaultActiveDatum
Type
string | null
Default
—
Requirement
optional
Prop
onActiveDatumChange
Type
(id: string | null) => void
Default
—
Requirement
optional
Prop
hiddenSeries
Type
readonly string[]
Default
—
Requirement
optional
Prop
defaultHiddenSeries
Type
readonly string[]
Default
—
Requirement
optional
Prop
onHiddenSeriesChange
Type
(ids: readonly string[]) => void
Default
—
Requirement
optional
Prop
title
Type
string
Default
—
Requirement
optional
Prop
description
Type
string
Default
—
Requirement
optional
Prop
interactive
Type
boolean
Default
—
Requirement
optional
Prop
keyboardNavigation
Type
boolean
Default
—
Requirement
optional
Prop
theme
Type
PartialChartTheme
Default
—
Requirement
optional
Prop
animation
Type
ChartAnimationInput
Default
—
Requirement
optional
Prop
speed
Type
number
Default
—
Requirement
optional
Prop
morphDurationMs
Type
number
Default
—
Requirement
optional
Prop
replayToken
Type
string | number
Default
—
Requirement
optional
Prop
class
Type
string
Default
—
Requirement
optional
Prop
style
Type
string
Default
—
Requirement
optional

Events

EventPayload
onActiveDatumChange(id: string | null) => void
onHiddenSeriesChange(ids: readonly string[]) => void

Content regions

  • dataSummary

Import

import { IsoMountainChart } from "@grassroot/charts-solid";

Props

Prop
Type
Default
Requirement
data
readonly IsoMountainDatum[]
—
required
peakLabel
string
—
optional
onActiveDatumChange
(id: string | null) => void
—
optional
onHiddenSeriesChange
(ids: readonly string[]) => void
—
optional
class
string
—
optional
style
JSX.CSSProperties
—
optional
width
number
—
optional
height
number
—
optional
renderer
ChartRenderer
—
optional
gpuBackend
ChartGpuBackend
—
optional
rendererStrategy
Partial<ChartRendererStrategy>
—
optional
renderPlanMode
"svg" | "host"
—
optional
showGrid
boolean
—
optional
legend
boolean | LegendConfig
—
optional
Prop
data
Type
readonly IsoMountainDatum[]
Default
—
Requirement
required
Prop
peakLabel
Type
string
Default
—
Requirement
optional
Prop
onActiveDatumChange
Type
(id: string | null) => void
Default
—
Requirement
optional
Prop
onHiddenSeriesChange
Type
(ids: readonly string[]) => void
Default
—
Requirement
optional
Prop
class
Type
string
Default
—
Requirement
optional
Prop
style
Type
JSX.CSSProperties
Default
—
Requirement
optional
Prop
width
Type
number
Default
—
Requirement
optional
Prop
height
Type
number
Default
—
Requirement
optional
Prop
renderer
Type
ChartRenderer
Default
—
Requirement
optional
Prop
gpuBackend
Type
ChartGpuBackend
Default
—
Requirement
optional
Prop
rendererStrategy
Type
Partial<ChartRendererStrategy>
Default
—
Requirement
optional
Prop
renderPlanMode
Type
"svg" | "host"
Default
—
Requirement
optional
Prop
showGrid
Type
boolean
Default
—
Requirement
optional
Prop
legend
Type
boolean | LegendConfig
Default
—
Requirement
optional
Prop
tooltip
Type
boolean | TooltipBehaviorConfig
Default
—
Requirement
optional
Prop
animation
Type
ChartAnimationInput
Default
—
Requirement
optional
Prop
interactive
Type
boolean
Default
—
Requirement
optional
Prop
keyboardNavigation
Type
boolean
Default
—
Requirement
optional
Prop
hiddenSeries
Type
readonly string[]
Default
—
Requirement
optional
Prop
defaultHiddenSeries
Type
readonly string[]
Default
—
Requirement
optional
Prop
activeDatum
Type
string | null
Default
—
Requirement
optional
Prop
defaultActiveDatum
Type
string | null
Default
—
Requirement
optional
Prop
speed
Type
number
Default
—
Requirement
optional
Prop
morphDurationMs
Type
number
Default
—
Requirement
optional
Prop
replayToken
Type
string | number
Default
—
Requirement
optional
Prop
theme
Type
PartialChartTheme
Default
—
Requirement
optional
Prop
title
Type
string
Default
—
Requirement
optional
Prop
description
Type
string
Default
—
Requirement
optional
Prop
ariaLabel
Type
string
Default
—
Requirement
optional

Events

EventPayload
onActiveDatumChange(id: string | null) => void
onHiddenSeriesChange(ids: readonly string[]) => void

Content regions

  • dataSummary