RangeAreaChart

1import { Chart, Navigation, NavigationStack, RangeAreaChart, Script, VStack } from "scripting"
2
3const weatherData = [
4  { month: 'Jan', min: 0, max: 4 },
5  { month: 'Feb', min: 2, max: 6 },
6  { month: 'Mar', min: 3, max: 8 },
7  { month: 'Apr', min: 5, max: 10 },
8  { month: 'May', min: 7, max: 14 },
9  { month: 'Jun', min: 10, max: 25 },
10  { month: 'Jul', min: 15, max: 30 },
11  { month: 'Aug', min: 20, max: 33 },
12  { month: 'Sep', min: 24, max: 35 },
13  { month: 'Oct', min: 18, max: 30 },
14  { month: 'Nov', min: 10, max: 23 },
15  { month: 'Dec', min: 5, max: 10 },
16]
17
18function Example() {
19
20  return <NavigationStack>
21    <VStack
22      navigationTitle={"RangeAreaChart"}
23      navigationBarTitleDisplayMode={"inline"}
24    >
25      <Chart
26        frame={{
27          height: 300
28        }}
29      >
30        <RangeAreaChart
31          marks={weatherData.map(item => ({
32            label: item.month,
33            start: item.min,
34            end: item.max,
35            interpolationMethod: 'catmullRom'
36          }))}
37        />
38      </Chart>
39    </VStack>
40  </NavigationStack>
41}
42
43async function run() {
44  await Navigation.present({
45    element: <Example />
46  })
47
48  Script.exit()
49}
50
51run()