Lumeo

Liquid Fill Chart

Display a percentage value as an animated liquid fill inside a shape. Great for showing completion rates, capacity levels, or KPI progress with a visual wave animation.

Installation

dotnet add package Lumeo.Charts

One-time app setup (AddLumeo(), CSS & JS) is covered in the installation guide.

Usage

@using Lumeo

<LiquidFillChart />

Shape-aware skeleton with reserved space for legend and axes — no layout shift when real data arrives.

API Reference

LiquidFillChart

Property Type Default Description
Value double 0.5 Fill level as a decimal (0 to 1).
Title string? null Title text displayed above the chart.
Shape string "circle" Container shape: "circle", "rect", "roundRect", "triangle", "diamond".
Color string? null Fill color for the liquid.
BackgroundColor string? null Background color of the container.
WaveAnimation bool true Enables the wave animation effect.
IsLoading bool false When true, renders a shape-matched loading skeleton in place of the chart. Bind to your async fetch state.
ShowLoadingSkeleton bool true Set to false to opt out of the skeleton (chart area stays empty while IsLoading is true).
SkeletonKind ChartSkeletonKind (chart default) Override the skeleton silhouette (Bars, Line, Area, Pie, Scatter, Grid, Generic).
SkeletonStyle ChartSkeletonStyle Phantom Phantom renders the real chart with placeholder data and morphs to real data via ECharts animation. Silhouette falls back to the legacy SVG skeleton overlay.
ShowLoadingLabel bool true Shows a small "Loading…" pill in the top-right corner whenever IsLoading is true. Layered on top of any SkeletonStyle. Set to false for bare visuals. (rc.18)
LoadingText string? "Loading…" Label rendered next to the spinner inside the loading pill. Set to empty to show the spinner alone. (rc.18)
AnimationDuration int? null Entry animation duration in milliseconds for the liquid fill.
AnimationEasing string? null ECharts easing function name used during the fill animation.
ColorPalette List<string>? null Multi-stop color palette for layered liquid waves.
EChartsSource string? null Override URL for the echarts-liquidfill plugin script.
Height string "350px" CSS height of the liquid fill chart container.
LabelFormat string? null ECharts label format template for the center value label.
LabelPosition string "center" Position of the value label inside the container.
PhantomCycleMs int 1400 Phantom-mode refresh interval in milliseconds while loading.
ShowDataLabels bool false Shows the numeric value label inside the liquid fill.
Theme string? null ECharts theme name applied to this chart instance.
Toolbox bool false Shows the ECharts toolbox with save-as-image controls.
Width string "100%" CSS width of the liquid fill chart container.