Skip to content

Core Concepts

Marks

A mark is the smallest drawable unit in a chart. The chart type often follows the mark type, but Chart Guru can also compose compatible cartesian marks in one chart, such as bars plus rule marks or points plus a line.

Mark

Used for

BarMark

Vertical or horizontal bars, ranges, grouped bars, stacked bars, and mini bars.

LineMark

Trend lines and connected point series.

AreaMark

Filled trends, stacked areas, range bands, and confidence bands.

PointMark

Point plots, scatter plots, and bubble-like encodings when symbol size is mapped.

SectorMark

Pie and donut slices.

RectangleMark

Heatmap cells and rectangular ranges.

RuleMark

Horizontal or vertical reference lines and threshold markers.

RadarMark

Radar or spider chart spokes and filled shapes.

CandleStickMark

Open, high, low, close financial candles.

Builder

The builder is a fluent way to assemble a Chart model. You add marks, configure the chart, then call Build. The same Chart model can be rendered in Canvas, UI Toolkit, editor previews, or custom code.

Chart chart = Chart.Create()
.Add(new LineMark(0f, 42f))
.Add(new LineMark(1f, 48f))
.ChartTitle("Trend")
.ChartXAxis(x => x.Label("Time"))
.ChartYAxis(y => y.Label("Value"))
.Build();

Semantic encoding

Semantic encoding means you describe what a mark represents instead of hard-coding every color. Chart Guru can then assign consistent colors, create legend entries, and group marks into series.

bar.ForegroundStyle(PlottableValue.Value("Product", "Electronics"));

// Use explicit color only when you need direct control.
bar.ForegroundStyle(Color.red);

Series, stacking, and legends

Marks with the same SeriesKey belong together. ForegroundStyleKey controls color assignment. For multi-series charts, use semantic foreground style values or set SeriesKey and ForegroundStyleKey yourself. Stacking is controlled with MarkStackingMethod: Unstacked, Standard, Normalized, or Center.

Four bar-chart examples showing the same Core, Pro, and Enterprise data rendered with MarkStackingMethod.Unstacked, Standard, Normalized, and Center.

Figure 2. Stacking options: unstacked, standard, normalized, and center modes let the same bar dataset show grouped series, absolute totals, 100% composition, or centered totals around the baseline.