UNPKG

@antv/g2plot

Version:

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

82 lines 2.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var _ = tslib_1.__importStar(require("@antv/util")); var global_1 = require("../../base/global"); var layer_1 = tslib_1.__importDefault(require("../bar/layer")); var GroupBarLayer = /** @class */ (function (_super) { tslib_1.__extends(GroupBarLayer, _super); function GroupBarLayer() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.type = 'groupBar'; return _this; } GroupBarLayer.getDefaultOptions = function () { return _.deepMix({}, _super.getDefaultOptions.call(this), { xAxis: { visible: true, grid: { visible: true, }, }, yAxis: { visible: true, title: { visible: false, }, }, label: { visible: true, position: 'right', offset: 8, adjustColor: true, }, legend: { visible: true, position: 'right-top', }, }); }; GroupBarLayer.prototype.afterRender = function () { _super.prototype.afterRender.call(this); var names = _.valuesOfKey(this.options.data, this.options.groupField); this.view.on('tooltip:change', function (e) { var items = e.items; var origin_items = _.clone(items); for (var i = 0; i < names.length; i++) { var name_1 = names[i]; for (var j = 0; j < origin_items.length; j++) { var item = origin_items[j]; if (item.name === name_1) { e.items[i] = item; } } } }); }; GroupBarLayer.prototype.scale = function () { var defaultMeta = {}; defaultMeta[this.options.groupField] = { values: _.valuesOfKey(this.options.data, this.options.groupField), }; if (!this.options.meta) { this.options.meta = defaultMeta; } else { this.options.meta = _.deepMix({}, this.options.meta, defaultMeta); } _super.prototype.scale.call(this); }; GroupBarLayer.prototype.adjustBar = function (bar) { bar.adjust = [ { type: 'dodge', marginRatio: 0.1, }, ]; }; return GroupBarLayer; }(layer_1.default)); exports.default = GroupBarLayer; global_1.registerPlotType('groupBar', GroupBarLayer); //# sourceMappingURL=layer.js.map