Project

ChartForgeX

Render deterministic charts, dashboards, topology, hierarchy, and report visuals directly from .NET.

Stars 47
Forks 2
NuGet downloads 75,067
Release ChartForgeX-v2.0.0
Language: HTML Updated: 2026-10-12

API Reference

Class

ChartTheme

Namespace ChartForgeX.Themes
Assembly ChartForgeX
Modifiers sealed

Defines colors, typography, and surface styling used by chart renderers.

Inheritance

  • Object
  • ChartTheme

Usage

Explore 68 API references to this type

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Accepted by parameters 30

Constructors

public ChartTheme() #

Methods

public static ChartTheme Aurora() #
Returns: ChartTheme

Creates a vibrant dark theme for high-impact product and status dashboards.

Returns

A vibrant dark chart theme.

public static ChartTheme Candy() #
Returns: ChartTheme

Creates a soft, playful light theme with rounded typography.

Returns

A playful chart theme.

public ChartTheme Clone() #
Returns: ChartTheme

Creates an independent copy of this theme.

Returns

A copied chart theme.

public static ChartTheme Colorblind() #
Returns: ChartTheme

Creates a colorblind-friendly light theme using a high-contrast qualitative palette.

Returns

A colorblind-friendly chart theme.

public static ChartTheme Dark() #
Returns: ChartTheme

Creates the default dark report theme.

Returns

A dark chart theme.

public static ChartTheme DashboardLight() #
Returns: ChartTheme

Creates a bright operational dashboard theme for compact KPI cards, progress rows, and utilization heatmaps.

Returns

A bright dashboard chart theme.

public static ChartTheme Editorial() #
Returns: ChartTheme

Creates a refined editorial theme with serif typography.

Returns

An editorial chart theme.

public static ChartTheme GraphiteDark() #
Returns: ChartTheme

Creates the lifted Graphite dark theme with the same semantic roles.

public static ChartTheme GraphiteLight() #
Returns: ChartTheme

Creates the default flat Graphite light theme.

public static ChartTheme Light() #
Returns: ChartTheme

Creates the default light report theme.

Returns

A light chart theme.

public static ChartTheme Minimal() #
Returns: ChartTheme

Creates a crisp minimal theme for dense business dashboards.

Returns

A minimal chart theme.

public static ChartTheme PeopleInfographic() #
Returns: ChartTheme

Creates a bright people-infographic theme for demographic and survey dashboards.

Returns

A people-infographic chart theme.

public static ChartTheme ReportDark() #
Returns: ChartTheme

Creates a polished dark theme for static reports and generated HTML.

Returns

A dark report chart theme.

public static ChartTheme ReportLight() #
Returns: ChartTheme

Creates a polished light theme for static reports and generated HTML.

Returns

A light report chart theme.

public static ChartTheme RestaurantDashboardLight() #
Returns: ChartTheme

Creates a soft restaurant operations dashboard theme for earnings, order, customer, and occupancy panels.

Returns

A restaurant operations dashboard chart theme.

public static ChartTheme SaasDashboardLight() #
Returns: ChartTheme

Creates a clean SaaS dashboard theme for recurring-revenue trends, targets, and driver cards.

Returns

A SaaS dashboard chart theme.

public static ChartTheme Terminal() #
Returns: ChartTheme

Creates a compact technical theme for operations and infrastructure charts.

Returns

A technical chart theme.

public static ChartTheme TransparentOverlayDark() #
Returns: ChartTheme

Creates a transparent dark overlay theme for charts rendered on existing imagery or wallpapers.

Returns

A transparent overlay chart theme.

public ChartTheme WithBrandKit(ChartBrandKit brandKit) #
Returns: ChartTheme

Applies a reusable brand kit.

Parameters

brandKit ChartForgeX.Themes.ChartBrandKit requiredposition: 0
The brand kit to apply.

Returns

The current theme.

public ChartTheme WithCornerRadius(Double card, Double plot) #
Returns: ChartTheme

Applies chart and plot corner radii.

Parameters

card System.Double requiredposition: 0
The outer card corner radius.
plot System.Double requiredposition: 1
The plot area corner radius.

Returns

The current theme.

public ChartTheme WithFontFamily(String fontFamily) #
Returns: ChartTheme

Applies a CSS font-family stack.

Parameters

fontFamily System.String requiredposition: 0
The CSS font-family stack.

Returns

The current theme.

public ChartTheme WithGuideColors(ChartColor grid, ChartColor axis) #
Returns: ChartTheme

Applies grid and axis guide colors.

Parameters

grid ChartForgeX.Primitives.ChartColor requiredposition: 0
The grid line color.
axis ChartForgeX.Primitives.ChartColor requiredposition: 1
The axis line color.

Returns

The current theme.

public ChartTheme WithMarkerRadius(Double markerRadius) #
Returns: ChartTheme

Applies the marker radius used by point-capable renderers.

Parameters

markerRadius System.Double requiredposition: 0
The non-negative marker radius. Use zero to suppress optional line markers.

Returns

The current theme.

WithPalette 2 overloads
public ChartTheme WithPalette(params ChartColor[] colors) #
Returns: ChartTheme

Applies a default series palette.

Parameters

colors ChartForgeX.Primitives.ChartColor[] requiredposition: 0
The palette colors.

Returns

The current theme.

public ChartTheme WithPalette(params String[] colors) #
Returns: ChartTheme

Applies a default series palette from hexadecimal color strings.

Parameters

colors System.String[] requiredposition: 0
The color strings in #RGB, #RGBA, #RRGGBB, or #RRGGBBAA notation.

Returns

The current theme.

public ChartTheme WithSemanticColors(ChartColor positive, ChartColor warning, ChartColor negative) #
Returns: ChartTheme

Applies semantic status colors.

Parameters

positive ChartForgeX.Primitives.ChartColor requiredposition: 0
The positive status color.
warning ChartForgeX.Primitives.ChartColor requiredposition: 1
The warning status color.
negative ChartForgeX.Primitives.ChartColor requiredposition: 2
The negative status color.

Returns

The current theme.

public ChartTheme WithShadowColor(ChartColor shadowColor) #
Returns: ChartTheme

Applies the card shadow color used by SVG and PNG renderers.

Parameters

shadowColor ChartForgeX.Primitives.ChartColor requiredposition: 0
The shadow color.

Returns

The current theme.

public ChartTheme WithShadowOpacity(Double shadowOpacity) #
Returns: ChartTheme

Applies the SVG card shadow opacity.

Parameters

shadowOpacity System.Double requiredposition: 0
The shadow opacity from zero to one.

Returns

The current theme.

public ChartTheme WithStrokeWidth(Double strokeWidth) #
Returns: ChartTheme

Applies the default line stroke width.

Parameters

strokeWidth System.Double requiredposition: 0
The stroke width.

Returns

The current theme.

public ChartTheme WithSurfaceColors(ChartColor background, ChartColor cardBackground, ChartColor plotBackground, ChartColor cardBorder, ChartColor plotBorder) #
Returns: ChartTheme

Applies background and surface colors.

Parameters

background ChartForgeX.Primitives.ChartColor requiredposition: 0
The full chart background.
cardBackground ChartForgeX.Primitives.ChartColor requiredposition: 1
The outer card background.
plotBackground ChartForgeX.Primitives.ChartColor requiredposition: 2
The plot area background.
cardBorder ChartForgeX.Primitives.ChartColor requiredposition: 3
The outer card border.
plotBorder ChartForgeX.Primitives.ChartColor requiredposition: 4
The plot area border.

Returns

The current theme.

public ChartTheme WithSurfaceStyle(ChartSurfaceStyle style) #
Returns: ChartTheme

Applies a reusable card and plot surface style.

Parameters

style ChartForgeX.Themes.ChartSurfaceStyle requiredposition: 0
The surface style preset.

Returns

The current theme.

public ChartTheme WithTextColors(ChartColor text, ChartColor mutedText) #
Returns: ChartTheme

Applies primary and secondary text colors.

Parameters

text ChartForgeX.Primitives.ChartColor requiredposition: 0
The primary text color.
mutedText ChartForgeX.Primitives.ChartColor requiredposition: 1
The secondary text color.

Returns

The current theme.

public ChartTheme WithTypography(Double title, Double subtitle, Double axisTitle, Double tickLabel, Double legend, Double dataLabel) #
Returns: ChartTheme

Applies the main typography sizes used by renderers.

Parameters

title System.Double requiredposition: 0
The title font size.
subtitle System.Double requiredposition: 1
The subtitle font size.
axisTitle System.Double requiredposition: 2
The axis title font size.
tickLabel System.Double requiredposition: 3
The tick label font size.
legend System.Double requiredposition: 4
The legend font size.
dataLabel System.Double requiredposition: 5
The data label font size.

Returns

The current theme.

Properties

public ChartColor Background { get; set; } #

Gets or sets the full chart background color.

public ChartColor CardBackground { get; set; } #

Gets or sets the outer card background color.

public ChartColor PlotBackground { get; set; } #

Gets or sets the plot area background color.

public ChartColor CardBorder { get; set; } #

Gets or sets the outer card stroke color.

public ChartColor PlotBorder { get; set; } #

Gets or sets the plot area stroke color.

public ChartColor Text { get; set; } #

Gets or sets the primary text color.

public ChartColor MutedText { get; set; } #

Gets or sets the secondary text color.

public ChartColor Grid { get; set; } #

Gets or sets the grid line color.

public ChartColor Axis { get; set; } #

Gets or sets the axis line color.

public ChartColor Positive { get; set; } #

Gets or sets the semantic color used for positive status indicators.

public ChartColor Warning { get; set; } #

Gets or sets the semantic color used for warning status indicators.

public ChartColor Negative { get; set; } #

Gets or sets the semantic color used for negative status indicators.

public ChartColor[]? SequentialRamp { get; set; } #

Gets or sets an optional sequential ramp (weakest to strongest) for count and intensity heatmaps. When set, heatmap, hexbin, and calendar cells without an explicit colour interpolate along it instead of blending the first palette colour into the plot background. It applies to the sequential heatmap scale only, not the semantic status scale. Design tokens with ramps.sequential set it.

public ChartColor[] Palette { get; set; } #

Gets or sets the default series palette.

public Boolean UseCard { get; set; } #

Gets or sets a value indicating whether renderers should draw an outer card surface.

public Double CornerRadius { get; set; } #

Gets or sets the outer card corner radius.

public Double PlotCornerRadius { get; set; } #

Gets or sets the plot area corner radius.

public Double StrokeWidth { get; set; } #

Gets or sets the default stroke width used by capable renderers.

public Double ShadowOpacity { get; set; } #

Gets or sets the opacity used for the SVG card shadow.

public ChartColor ShadowColor { get; set; } #

Gets or sets the color used for card shadows.

public Double TitleFontSize { get; set; } #

Gets or sets the title font size used by SVG and HTML renderers.

public Double SubtitleFontSize { get; set; } #

Gets or sets the subtitle font size used by SVG and HTML renderers.

public Double AxisTitleFontSize { get; set; } #

Gets or sets the axis title font size used by SVG renderers.

public Double TickLabelFontSize { get; set; } #

Gets or sets the tick label font size used by SVG renderers.

public Double LegendFontSize { get; set; } #

Gets or sets the legend font size used by SVG renderers.

public Double DataLabelFontSize { get; set; } #

Gets or sets the data label font size used by SVG renderers.

public Double MarkerRadius { get; set; } #

Gets or sets the marker radius used by SVG and PNG point-capable renderers. A value of zero suppresses optional line markers while preserving markers required by scatter and specialized chart types.

public String FontFamily { get; set; } #

Gets or sets the CSS font-family used by vector and HTML renderers.

public Boolean UseGraphiteLayout { get; set; } #

Gets or sets whether the shared Graphite frame, axes, legend, and family geometry are used.

public Boolean FlatMarks { get; set; } #

Gets or sets whether filled marks and surfaces use flat colour without highlights or shadows.

public ChartColor Text2 { get; set; } #

Gets or sets the secondary text colour used for data labels and legends.

public ChartColor Info { get; set; } #

Gets or sets the informational state colour, independent of the categorical palette.

public ChartColor Quiet { get; set; } #

Gets or sets the quiet healthy fill colour.

public ChartColor QuietLine { get; set; } #

Gets or sets the understated healthy line colour.

public ChartColor Neutral { get; set; } #

Gets or sets the neutral aggregate colour.

public ChartColor Neutral2 { get; set; } #

Gets or sets the neutral track colour.

public ChartColor Neutral3 { get; set; } #

Gets or sets the neutral zero-cell colour.