@antv/g2plot
Version:
G2 Plot, a market of plots built with the Grammar of Graphics'
70 lines • 2.81 kB
JavaScript
;
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 connected_area_1 = tslib_1.__importDefault(require("../../components/connected-area"));
var factory_1 = require("../../components/factory");
var layer_1 = tslib_1.__importDefault(require("../column/layer"));
require("./component/label/stack-column-label");
var StackColumnLayer = /** @class */ (function (_super) {
tslib_1.__extends(StackColumnLayer, _super);
function StackColumnLayer() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.type = 'stackColum';
return _this;
}
StackColumnLayer.getDefaultOptions = function () {
return _.deepMix({}, _super.getDefaultOptions.call(this), {
legend: {
visible: true,
position: 'right-top',
},
label: {
visible: false,
position: 'middle',
offset: 0,
adjustColor: true,
},
connectedArea: {
visible: false,
triggerOn: 'mouseenter',
},
});
};
StackColumnLayer.prototype.init = function () {
if (this.options.connectedArea.visible) {
this.options.tooltip.crosshairs = null;
}
_super.prototype.init.call(this);
};
StackColumnLayer.prototype.afterRender = function () {
var props = this.options;
// 绘制区域连接组件
if (props.connectedArea.visible) {
this.connectedArea = new connected_area_1.default(tslib_1.__assign({ view: this.view, field: props.stackField, animation: props.animation === false ? false : true }, props.connectedArea));
}
_super.prototype.afterRender.call(this);
};
StackColumnLayer.prototype.adjustColumn = function (column) {
column.adjust = [
{
type: 'stack',
},
];
};
StackColumnLayer.prototype.extractLabel = function () {
var props = this.options;
var defaultOptions = this.getLabelOptionsByPosition(props.label.position);
var label = _.deepMix({}, defaultOptions, this.options.label);
if (label && label.visible === false) {
return false;
}
var labelConfig = factory_1.getComponent('label', tslib_1.__assign({ plot: this, labelType: 'stackColumnLabel', fields: [props.yField] }, label));
return labelConfig;
};
return StackColumnLayer;
}(layer_1.default));
exports.default = StackColumnLayer;
global_1.registerPlotType('stackColumn', StackColumnLayer);
//# sourceMappingURL=layer.js.map