# ScaleAdjust

Import `ScaleAdjust` from `@pibbl/core/viz`. Supply `x` with `xScale`, `y` with `yScale`,
or both pairs. Continuous coordinates are numbers; point-scale coordinates are string or numeric categories. Both accept core signals. Unknown point categories throw `RangeError`; band scales are unsupported. Omitted
axes translate by zero; a coordinate without its matching ID is invalid.

The component maps the supplied coordinates and returns an ordinary translated
core `Group`. It does not allocate space, paint a mark, add hit geometry, or change
signal semantics. Children can be normal core shapes, text, or custom components.
This is the low-level extension point for scaled markers and other composition.

## API details from source

<span id="api-ScaleAdjust"></span>

### ScaleAdjust

Adjusts descendant placement using configured x and y scales.

```ts
ScaleAdjust: (props: ScaleAdjustProps) => JSX.Element
```

Related API: [ScaleAdjust](/reference/components/scale-adjust/), [ScaleAdjustProps](/reference/components/scale-adjust/), [JSX](/reference/overview/).

#### Parameters

- **`props`** — Scale identity and domain or range adjustments for descendants. See
[ScaleAdjustProps](/reference/components/scale-adjust/) .

#### Returns

Child content evaluated with the adjusted scale.

#### See also

[ScaleAdjustProps](/reference/components/scale-adjust/)

[View source — packages/core/src/features/viz/lib/scale-adjust.tsx:13](/source/packages/core/src/features/viz/lib/scale-adjust-tsx/#L13)

<span id="api-ScaleAdjustProps"></span>

### ScaleAdjustProps

Authored inputs for ScaleAdjust, including the declared data and presentation options.

```ts
type ScaleAdjustProps = ScaleAdjustX &
  ScaleAdjustY & {
    /** Descendant content or the callback that supplies it. See {@link PibblNode}. */
    readonly children?: PibblNode;
  }
```

Related API: [ScaleAdjustProps](/reference/components/scale-adjust/), [PibblNode](/reference/types/elements-components/#pibblnode).

#### See also

[PibblNode](/reference/types/elements-components/#pibblnode)

[ScaleAdjust](/reference/components/scale-adjust/)

[View source — packages/core/src/features/viz/lib/types.ts:537](/source/packages/core/src/features/viz/lib/types-ts/#L537)

#### Properties and methods

<span id="api-ScaleAdjustProps-x"></span>
<details>
<summary>x (optional)</summary>


```ts
readonly x?: SignalValue<BandCategory> | undefined
```

Related API: [SignalValue](/reference/types/signal-inputs/#signalvalue), [BandCategory](/reference/components/scale/).

Horizontal coordinate or displacement in the containing coordinate system. See
SignalValue.
Not accepted in this variant; use the alternative fields instead. See ScaleAdjustX.

[View source — packages/core/src/features/viz/lib/types.ts:499](/source/packages/core/src/features/viz/lib/types-ts/#L499)

</details>

<span id="api-ScaleAdjustProps-xScale"></span>
<details>
<summary>xScale (optional)</summary>


```ts
readonly xScale?: ScaleId | undefined
```

Related API: [ScaleId](/reference/components/scale/).

The scale used to map horizontal data coordinates. See ScaleId.
Not accepted in this variant; use the alternative fields instead. See ScaleAdjustX.

[View source — packages/core/src/features/viz/lib/types.ts:501](/source/packages/core/src/features/viz/lib/types-ts/#L501)

</details>

<span id="api-ScaleAdjustProps-y"></span>
<details>
<summary>y (optional)</summary>


```ts
readonly y?: SignalValue<BandCategory> | undefined
```

Related API: [SignalValue](/reference/types/signal-inputs/#signalvalue), [BandCategory](/reference/components/scale/).

Vertical coordinate or displacement in the containing coordinate system. See
SignalValue.
Not accepted in this variant; use the alternative fields instead. See ScaleAdjustY.

[View source — packages/core/src/features/viz/lib/types.ts:521](/source/packages/core/src/features/viz/lib/types-ts/#L521)

</details>

<span id="api-ScaleAdjustProps-yScale"></span>
<details>
<summary>yScale (optional)</summary>


```ts
readonly yScale?: ScaleId | undefined
```

Related API: [ScaleId](/reference/components/scale/).

The scale used to map vertical data coordinates. See ScaleId.
Not accepted in this variant; use the alternative fields instead. See ScaleAdjustY.

[View source — packages/core/src/features/viz/lib/types.ts:523](/source/packages/core/src/features/viz/lib/types-ts/#L523)

</details>

<span id="api-ScaleAdjustProps-children"></span>
<details>
<summary>children (optional)</summary>


```ts
readonly children?: PibblNode
```

Related API: [PibblNode](/reference/types/elements-components/#pibblnode).

Descendant content or the callback that supplies it. See PibblNode.

[View source — packages/core/src/features/viz/lib/types.ts:540](/source/packages/core/src/features/viz/lib/types-ts/#L540)

</details>

## Implementation guidance for agents

Read the [Data visualization companion](/agents/topics/visualization/) for ownership, adaptation, failure modes, and verification. [Agent start](/agents/) provides the version-selection workflow.

## Complete minimal examples

- [Line series](/minimal-examples/viz/lines/): Plot readings with a nullable gap and a scale-adjusted marker. [Plain source](/minimal/viz/lines.tsx)
## Documentation version

Documentation built with @pibbl/core 0.0.2, revision 272a94a. ALPHA — NOT FOR PRODUCTION USE.
