MCPcopy Index your code
hub / github.com/microsoft/SandDance / legendGradientLabels

Function legendGradientLabels

docs/app/js/sanddance-app.js:147741–147807  ·  view source on GitHub ↗
(spec, config, userEncode, dataRef)

Source from the content-addressed store, hash-verified

147739}
147740const alignExpr = `datum.${Perc}<=0?"${Left}":datum.${Perc}>=1?"${Right}":"${Center}"`, baselineExpr = `datum.${Perc}<=0?"${Bottom}":datum.${Perc}>=1?"${Top}":"${Middle}"`;
147741function legendGradientLabels(spec, config, userEncode, dataRef) {
147742 const _ = lookup(spec, config), vertical = _.isVertical(), thickness = encoder(_.gradientThickness()), length = _.gradientLength();
147743 let overlap = _("labelOverlap"), enter, update, u, v, adjust = "";
147744 const encode = {
147745 enter: enter = {
147746 opacity: zero
147747 },
147748 update: update = {
147749 opacity: one,
147750 text: {
147751 field: Label
147752 }
147753 },
147754 exit: {
147755 opacity: zero
147756 }
147757 };
147758 addEncoders(encode, {
147759 fill: _("labelColor"),
147760 fillOpacity: _("labelOpacity"),
147761 font: _("labelFont"),
147762 fontSize: _("labelFontSize"),
147763 fontStyle: _("labelFontStyle"),
147764 fontWeight: _("labelFontWeight"),
147765 limit: value(spec.labelLimit, config.gradientLabelLimit)
147766 });
147767 if (vertical) {
147768 enter.align = {
147769 value: "left"
147770 };
147771 enter.baseline = update.baseline = {
147772 signal: baselineExpr
147773 };
147774 u = "y";
147775 v = "x";
147776 adjust = "1-";
147777 } else {
147778 enter.align = update.align = {
147779 signal: alignExpr
147780 };
147781 enter.baseline = {
147782 value: "top"
147783 };
147784 u = "x";
147785 v = "y";
147786 }
147787 enter[u] = update[u] = {
147788 signal: adjust + "datum." + Perc,
147789 mult: length
147790 };
147791 enter[v] = update[v] = thickness;
147792 thickness.offset = value(spec.labelOffset, config.gradientLabelOffset) || 0;
147793 overlap = overlap ? {
147794 separation: _("labelSeparation"),
147795 method: overlap,
147796 order: "datum." + Index
147797 } : undefined; // type, role, style, key, dataRef, encode, extras
147798 return guideMark({

Callers 1

parseLegendFunction · 0.70

Calls 6

lookupFunction · 0.70
encoderFunction · 0.70
_Function · 0.70
addEncodersFunction · 0.70
valueFunction · 0.70
guideMarkFunction · 0.70

Tested by

no test coverage detected