Liking cljdoc? Tell your friends :D

scicloj.plotje.impl.extract

Extract data-space geometry from resolved draft layers and stat results. Produces layer descriptor maps — plain Clojure maps with mark type, style, and groups of data-space coordinates.

Extract data-space geometry from resolved draft layers and stat results.
Produces layer descriptor maps — plain Clojure maps with mark type,
style, and groups of data-space coordinates.
raw docstring

dash-presetsclj

Named stroke-dash presets, resolved to a [dash gap] pixel pattern. :solid means no dash (returns nil).

Named stroke-dash presets, resolved to a `[dash gap]` pixel pattern.
`:solid` means no dash (returns nil).
sourceraw docstring

extract-layercljmultimethod

Extract data-space geometry from a resolved draft layer and its stat result. Returns a layer descriptor map.

Extract data-space geometry from a resolved draft layer and its stat result.
Returns a layer descriptor map.
sourceraw docstring

fill-domainclj

(fill-domain stat spec scale-type)

The [lo hi] a fill scale is read against -- by the marks, in this namespace, and by the legend, in plan/build-fill-legend. One function because they are one question, and answering it twice let the bar describe a scale the tiles were not drawn through.

A stat reports its range floored at zero: [0 max-count] for a two-dimensional bin, [0 max-density] for a density grid. That is what a linear count legend should span -- a count starts at none.

A log scale has no reading for zero, and the floor is a convention rather than a value any tile carries: an empty bin is not drawn at all, so the smallest tile a count heatmap draws is one. So on a log scale the low end is read from the tiles instead. Read from the floor, the generator offered every decade from 1e-300 and the legend carried three hundred labels printed over each other.

A :domain written on the scale still wins, through scale/numeric-color-domain, and is checked the same way.

The `[lo hi]` a fill scale is read against -- by the marks, in this
namespace, and by the legend, in `plan/build-fill-legend`. One
function because they are one question, and answering it twice let
the bar describe a scale the tiles were not drawn through.

A stat reports its range floored at zero: `[0 max-count]` for a
two-dimensional bin, `[0 max-density]` for a density grid. That is
what a linear count legend should span -- a count starts at none.

A log scale has no reading for zero, and the floor is a convention
rather than a value any tile carries: an empty bin is not drawn at
all, so the smallest tile a count heatmap draws is one. So on a log
scale the low end is read from the tiles instead. Read from the
floor, the generator offered every decade from 1e-300 and the
legend carried three hundred labels printed over each other.

A `:domain` written on the scale still wins, through
`scale/numeric-color-domain`, and is checked the same way.
sourceraw docstring

fill-settingclj

(fill-setting k draft-layer cfg)

A scale setting for a mark drawn in a fill: what a :fill scale spec says, and failing that a :color one, the :fill plot option, and the :color plot option, in that order.

A scale setting for a mark drawn in a fill: what a `:fill` scale spec
says, and failing that a `:color` one, the `:fill` plot option, and
the `:color` plot option, in that order.
sourceraw docstring

fill-setting-from-spec?clj

(fill-setting-from-spec? k draft-layer cfg)

True when fill-setting answers k from a scale spec rather than from a plot option. Render-time configuration is the outermost scope of a colour range, so it repaints a legend built from an option and leaves one built from a spec alone; this is how the legend knows which it has.

True when `fill-setting` answers `k` from a scale spec rather than
from a plot option. Render-time configuration is the outermost scope
of a colour range, so it repaints a legend built from an option and
leaves one built from a spec alone; this is how the legend knows
which it has.
sourceraw docstring

fill-specclj

(fill-spec draft-layer)

The scale spec a mark drawn in a fill reads: the :fill spec over the :color one, key by key.

A tile reads :color as a synonym for :fill, so a gradient, a domain or a midpoint written either way has to reach it, and a :fill spec naming only one of them leaves the rest to :color. A key neither spec names is answered by the plot options, through fill-setting.

The scale spec a mark drawn in a fill reads: the `:fill` spec over
the `:color` one, key by key.

A tile reads `:color` as a synonym for `:fill`, so a gradient, a
domain or a midpoint written either way has to reach it, and a
`:fill` spec naming only one of them leaves the rest to `:color`.
A key neither spec names is answered by the plot options, through
`fill-setting`.
sourceraw docstring

resolve-colorclj

(resolve-color all-colors color-val draft-layer cfg)

Resolve a color value to [r g b a]. Handles column values, fixed colors, and defaults.

A fixed color wins over a group's palette color. The two cannot conflict: :color is one key, so a literal there means there is no color column, and any group color present came from :group instead. Grouping by one column while drawing every group in one color is a common case: many pale lines behind a few named ones. It needs the fixed color to survive the grouping.

Takes the resolved draft layer rather than its :fixed-color, because the layer answers a second question too: whether its color column is drawn as it stands. resolve/resolve-aesthetics decides that once for the column, so what arrives here is a group value that already is a color and needs no palette.

Resolve a color value to [r g b a]. Handles column values, fixed colors, and defaults.

A fixed color wins over a group's palette color. The two cannot
conflict: `:color` is one key, so a literal there means there is no
color column, and any group color present came from `:group` instead.
Grouping by one column while drawing every group in one color is a
common case: many pale lines behind a few named ones. It needs the
fixed color to survive the grouping.

Takes the resolved draft layer rather than its `:fixed-color`,
because the layer answers a second question too: whether its color
column is drawn as it stands. `resolve/resolve-aesthetics` decides
that once for the column, so what arrives here is a group value that
already *is* a color and needs no palette.
sourceraw docstring

resolve-dashclj

(resolve-dash stroke-dash)

Resolve a :stroke-dash value to a [dash gap ...] vector or nil. Accepts a named preset (:solid/:dashed/:dotted), a raw [dash gap ...] vector (passed through), or nil (no dash).

Resolve a `:stroke-dash` value to a `[dash gap ...]` vector or nil.
Accepts a named preset (`:solid`/`:dashed`/`:dotted`), a raw
`[dash gap ...]` vector (passed through), or nil (no dash).
sourceraw docstring

smallest-drawn-fillclj

(smallest-drawn-fill stat)

The smallest fill value the tiles of stat actually carry, or nil where it has none.

The smallest fill value the tiles of `stat` actually carry, or nil
where it has none.
sourceraw docstring

tooltip-drawing-marksclj

The marks that put hover text on the layer they extract: the two methods below that carry :fixed-tooltip and the stat's :tooltips. Named here so a message can list them; whether a plot drew any tooltip is read from the plan rather than from this set, so an extension that attaches one is counted without being added here.

The marks that put hover text on the layer they extract: the two
methods below that carry `:fixed-tooltip` and the stat's `:tooltips`.
Named here so a message can list them; whether a plot drew any
tooltip is read from the plan rather than from this set, so an
extension that attaches one is counted without being added here.
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close