Range Bar
Range bars render each data point as a bar spanning a [from, to] pair instead of a single value. The canonical use case is project-schedule visualization — every task has a start and end date, every employee has an attendance window.
Note:
range-baris an ApexCharts-specific chart type. Chart.js does not have a native equivalent; switching the active library throwsTypeNotSupportedException.
When to use
When every data point has a meaningful [start, end] envelope. For single-value comparisons reach for bar charts; for Gantt-with-task-relationships consider timeline charts (similar API, different default styling).
Basic Example — Sprint schedule
Multi-team — Working hours overlap
Real-world recipe — Eloquent task schedule
@php
$tasks = \App\Models\Task::query()
->where('sprint_id', $sprint->id)
->orderBy('start_at')
->get(['title', 'start_at', 'end_at']);
$taskData = $tasks->map(fn ($t) => [
'x' => $t->title,
'y' => [$t->start_at->timestamp * 1000, $t->end_at->timestamp * 1000],
])->all();
@endphp
<x-wirekit-chart
type="range-bar"
:labels="$tasks->pluck('title')->all()"
:datasets="[['label' => $sprint->name, 'data' => $taskData]]"
:options="['xaxis' => ['type' => 'datetime', 'labels' => ['datetimeUTC' => false, 'format' => 'MMM dd']], 'plotOptions' => ['bar' => ['horizontal' => true]], 'tooltip' => ['x' => ['format' => 'MMM dd, yyyy']]]"
height="360px"
/>
License note
ApexCharts is non-MIT — see the License section on the Chart overview page and apexcharts.com/license for the full terms.
See Also
- Timeline charts — similar API with project-timeline-specific styling
- Bar charts for single-value comparisons
Design Tokens
See ApexCharts adapter — Design Tokens for the color, typography, and grid tokens shared across every ApexCharts demo.