Skip to content

Commit 5f3b553

Browse files
Barchart dynamic height example (#763)
* fix for empty layers toggle showing small circle * Barchart dynamic height example
1 parent 0292e53 commit 5f3b553

1 file changed

Lines changed: 56 additions & 0 deletions

File tree

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
<script>
2+
import { BarChart, defaultChartPadding } from 'layerchart';
3+
4+
let data2 = [
5+
{ name: 'One', value1: 10, value2: 20 },
6+
{ name: 'Two', value1: 5, value2: 20 }
7+
];
8+
9+
let data4 = [
10+
{ name: 'One', value1: 10, value2: 20 },
11+
{ name: 'Two', value1: 5, value2: 20 },
12+
{ name: 'Three', value1: 15, value2: 15 },
13+
{ name: 'Four', value1: 10, value2: 5 }
14+
];
15+
16+
let data6 = [
17+
{ name: 'One', value1: 10, value2: 20 },
18+
{ name: 'Two', value1: 5, value2: 20 },
19+
{ name: 'Three', value1: 15, value2: 15 },
20+
{ name: 'Four', value1: 10, value2: 5 },
21+
{ name: 'Five', value1: 8, value2: 5 },
22+
{ name: 'Size', value1: 3, value2: 5 }
23+
];
24+
25+
let seriesCount = $state(2);
26+
let data = $derived(seriesCount === 2 ? data2 : seriesCount === 4 ? data4 : data6);
27+
28+
let barHeight = 50;
29+
let padding = { top: 4, bottom: 20 };
30+
let bandPadding = 0.4;
31+
let chartHeight = $derived(
32+
(barHeight + barHeight * bandPadding) * seriesCount +
33+
barHeight * bandPadding +
34+
padding.top +
35+
padding.bottom +
36+
8
37+
);
38+
</script>
39+
40+
<label><input bind:group={seriesCount} type="radio" value={2} /> 2</label>
41+
<label><input bind:group={seriesCount} type="radio" value={4} /> 4</label>
42+
<label><input bind:group={seriesCount} type="radio" value={6} /> 6</label>
43+
44+
<BarChart
45+
{data}
46+
{bandPadding}
47+
y="name"
48+
series={[
49+
{ key: 'value1', color: 'hsl(100 100% 50%)' },
50+
{ key: 'value2', color: 'hsl(200 100% 50%)' }
51+
]}
52+
orientation="horizontal"
53+
seriesLayout="stackExpand"
54+
padding={defaultChartPadding({ left: 20 })}
55+
height={chartHeight}
56+
/>

0 commit comments

Comments
 (0)