@antv/g2plot
Version:
G2 Plot, a market of plots built with the Grammar of Graphics'
53 lines • 2.11 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 layer_1 = tslib_1.__importDefault(require("../stack-area/layer"));
var data_1 = require("../../util/data");
var PercentageStackAreaLayer = /** @class */ (function (_super) {
tslib_1.__extends(PercentageStackAreaLayer, _super);
function PercentageStackAreaLayer() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.type = 'percentageStackArea';
return _this;
}
PercentageStackAreaLayer.getDefaultOptions = function () {
return _.deepMix({}, _super.getDefaultOptions.call(this), {
yAxis: {
visible: true,
label: {
visible: true,
formatter: function (v) {
var reg = /%/gi;
return v.replace(reg, '');
},
},
},
});
};
PercentageStackAreaLayer.prototype.processData = function (originData) {
var _a = this.options, xField = _a.xField, yField = _a.yField;
return data_1.transformDataPercentage(originData, xField, [yField]);
};
PercentageStackAreaLayer.prototype.scale = function () {
var metaConfig = {};
var yField = this.options.yField;
metaConfig[this.options.yField] = {
tickCount: 6,
alias: yField + " (%)",
minLimit: 0,
maxLimit: 1,
formatter: function (v) {
var formattedValue = (v * 100).toFixed(1);
return formattedValue + "%";
},
};
this.options.meta = _.deepMix({}, metaConfig, this.options.meta);
_super.prototype.scale.call(this);
};
return PercentageStackAreaLayer;
}(layer_1.default));
exports.default = PercentageStackAreaLayer;
global_1.registerPlotType('percentageStackArea', PercentageStackAreaLayer);
//# sourceMappingURL=layer.js.map