Skip to main content
WireKit
Copy for LLM

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-bar is an ApexCharts-specific chart type. Chart.js does not have a native equivalent; switching the active library throws TypeNotSupportedException.

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

Two-week sprint task schedule

Multi-team — Working hours overlap

Working hours by team across timezones

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

Design Tokens

See ApexCharts adapter — Design Tokens for the color, typography, and grid tokens shared across every ApexCharts demo.