Documentation / @finchart/core / index / ResolvedPlotConfig
Interface: ResolvedPlotConfig
Defined in: packages/core/src/plot/types.ts:141
The config after the door's resolution — every field with a static default is present, so a read site takes the value as-is instead of re-deciding a default locally. (The local version got copied — the same ?? 0 in three files — and drifted; one table at the door makes a second copy of a default impossible to express.)
Consumers write the loose PlotConfig; the constructor / applyOptions doors are the only producers of this shape, and getOptions hands it back — what you get from a chart is always fully resolved.
minBarSpacing/maxBarSpacing stay optional — their default belongs to the coordinate system (XMapping.barSpacingDefaults), 0 carries the meaning "no limit in that direction", and the single read site (x-viewport.ts) is where that computed default applies.
Extends
Properties
axis
axis:
object
Defined in: packages/core/src/plot/types.ts:150
x is shared by every pane; y is per pane. The y here is the default, and an individual pane overrides it via PaneOptions.axis — but placement (size, position) is decided only here (see YAxisOptions).
x
y
Overrides
axisDrag
axisDrag:
boolean
Defined in: packages/core/src/plot/types.ts:148
Whether dragging on an axis slice can adjust the scale. Enabled if omitted. Vertical drag on the y-axis = that pane's value axis (autoScale turns off); horizontal drag on the x-axis = zooming x. A tool (an input consumer) always gets first claim.
Overrides
maxBarSpacing?
optionalmaxBarSpacing?:number
Defined in: packages/core/src/plot/types.ts:113
Inherited from
minBarSpacing?
optionalminBarSpacing?:number
Defined in: packages/core/src/plot/types.ts:112
Lower and upper bound, in pixels, for how much space one bar occupies — the limits of zoom. A zoom that would push one domain unit outside this pixel range is clamped on the spot.
Defaults to the coordinate system's own default if omitted — the bar-index coordinate system (barIndexX) uses min 0.5 / max 200, and a continuous coordinate system has no limit. 0 turns off the limit in that direction — a value that says "none" on top of the default.
Inherited from
padding
padding:
Padding
Defined in: packages/core/src/plot/types.ts:142
Outer margin. DEFAULT_PADDING if omitted.
Overrides
paneGap
paneGap:
number
Defined in: packages/core/src/plot/types.ts:144
Gap between panes (px). Defaults to 0 if omitted.
Overrides
preserveLiveRightEdgeOnZoomOut
preserveLiveRightEdgeOnZoomOut:
boolean
Defined in: packages/core/src/plot/types.ts:146
While the latest bar is visible, keep a zoom-out from moving the right edge farther into empty space. A pan or a zoom while browsing history still follows the usual cursor-anchored behavior. Off by default.
Overrides
PlotConfig.preserveLiveRightEdgeOnZoomOut
resizablePanes
resizablePanes:
boolean
Defined in: packages/core/src/plot/types.ts:147
Whether dragging a divider can resize pane heights. Enabled if omitted.
Overrides
rightOffset
rightOffset:
number
Defined in: packages/core/src/plot/types.ts:149
Empty space after the last bar, in domain units (bar count, for a bar-index coordinate system). Only applies to fitting (fitDomains, first data) — pan/zoom belong to the user.
Overrides
shiftVisibleRangeOnNewBar
shiftVisibleRangeOnNewBar:
boolean
Defined in: packages/core/src/plot/types.ts:145
When a new bar arrives, if the last bar was in view, shift the window right by that much. Doesn't shift while looking at history — the window mustn't get dragged along mid-scroll. Off by default: silently moving the window is the worse mistake.
Overrides
PlotConfig.shiftVisibleRangeOnNewBar
showGrid
showGrid:
boolean
Defined in: packages/core/src/plot/types.ts:143
Whether grid lines are drawn. On if omitted.
Overrides
style
style:
object
Defined in: packages/core/src/plot/types.ts:151
Overrides the CSS variable / default only for the fields given here.
grid?
optionalgrid?:Partial<LineStyle>