UNPKG

@antv/g2plot

Version:

G2 Plot, a market of plots built with the Grammar of Graphics'

37 lines 1.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var g2_1 = require("@antv/g2"); var _ = tslib_1.__importStar(require("@antv/util")); var column_label_1 = require("../../../column/component/label/column-label"); var layer_1 = require("../../layer"); var WaterfallLabels = /** @class */ (function (_super) { tslib_1.__extends(WaterfallLabels, _super); function WaterfallLabels() { return _super !== null && _super.apply(this, arguments) || this; } WaterfallLabels.prototype.adjustPosition = function (label, shape, item) { var MARGIN = 2; var shapeBox = shape.getBBox(); var origin = label.get('origin'); var yField = item.fields[0]; var values = origin[layer_1.VALUE_FIELD]; var diff = origin[yField]; var value = _.isArray(values) ? values[1] : values; var yPos = (shapeBox.minY + shapeBox.maxY) / 2; var textBaseline = 'bottom'; if (diff < 0) { yPos = shapeBox.maxY + MARGIN; textBaseline = 'top'; } else { yPos = shapeBox.minY - MARGIN; } label.attr('y', yPos); label.attr('text', value); label.attr('textBaseline', textBaseline); }; return WaterfallLabels; }(column_label_1.ColumnLabels)); g2_1.registerElementLabels('waterfall', WaterfallLabels); //# sourceMappingURL=waterfall-label.js.map