Skip to content

Consider treating width/height literal constants as trainable coordinates #3

Description

@schochastics

Context

Follow-up from #2, which made bare literals on the pure positional aesthetics (x, y, xend, yend, xmin, xmax, ymin, ymax) train the position scale instead of being dropped as style params.

That fix deliberately left width (and any future height) out of scope.

Current behaviour

mark_bar(width = 0.5) flows through params, and the emitter reads it via a %||% band fallback (e.g. w <- rep_len(L$values$width %||% band, n) in .emit_*). So a constant width works today, but through a different path than the coordinate channels — it does not go through values/scale training.

Question to decide

Should width/height constants be unified with the positional-literal path (.POSITION_AES), or is the current params + %||% band fallback the intended design?

Not a bug — tracking so the inconsistency isn't forgotten.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions