bytev-charts
Version:
基于echarts和JavaScript及ES6封装的一个可以直接调用的图表组件库,内置主题设计,简单快捷,且支持用户自定义配置; npm 安装方式: npm install bytev-charts 若启动提示还需额外install插件,则运行 npm install @babel/runtime-corejs2 即可;
127 lines (105 loc) • 4.64 kB
JavaScript
import _Reflect$construct from "@babel/runtime-corejs2/core-js/reflect/construct";
import _classCallCheck from "@babel/runtime-corejs2/helpers/classCallCheck";
import _createClass from "@babel/runtime-corejs2/helpers/createClass";
import _assertThisInitialized from "@babel/runtime-corejs2/helpers/assertThisInitialized";
import _get from "@babel/runtime-corejs2/helpers/get";
import _inherits from "@babel/runtime-corejs2/helpers/inherits";
import _possibleConstructorReturn from "@babel/runtime-corejs2/helpers/possibleConstructorReturn";
import _getPrototypeOf from "@babel/runtime-corejs2/helpers/getPrototypeOf";
import _defineProperty from "@babel/runtime-corejs2/helpers/defineProperty";
import _Object$assign from "@babel/runtime-corejs2/core-js/object/assign";
import "core-js/modules/es.array.for-each.js";
import "core-js/modules/es.object.to-string.js";
import "core-js/modules/web.dom-collections.for-each.js";
import "core-js/modules/es.function.name.js";
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
import BarComponent from '../BarComponent.class.js';
/*
* 双向柱状图
* */
var BarBidirectional = /*#__PURE__*/function (_BarComponent) {
_inherits(BarBidirectional, _BarComponent);
var _super = _createSuper(BarBidirectional);
function BarBidirectional(element, option) {
var _this;
_classCallCheck(this, BarBidirectional);
_this = _super.call(this, element, option);
_defineProperty(_assertThisInitialized(_this), "name", 'BarBidirectional');
return _this;
}
_createClass(BarBidirectional, [{
key: "setData",
value: function setData(data) {
var _this2 = this;
_get(_getPrototypeOf(BarBidirectional.prototype), "setData", this).call(this, data);
delete this.byteVModel.yAxis[0].min;
var min = Math.pow(2, 53);
data.forEach(function (itm, idx) {
itm.y.forEach(function (m, i) {
m = Math.abs(m);
min = m < min ? m : min;
});
}); // min = Math.sqrt(min)
// min = this.byteVModel.xAxis.min ? min * 0.005 : min * 0.05
min = this.byteVModel.xAxis[0].min ? min * 0.01 : min * 0.1;
var arr = [];
var _loop = function _loop(i) {
_this2.byteVModel.xAxis[0].data = data[i].x;
_this2.byteVModel.xAxis[0].name = data[i].unitX;
_this2.byteVModel.yAxis[0].name = data[i].unitY;
var stackData = [];
data[i].y.forEach(function (itm, idx) {
stackData.push(min);
});
var color = _this2.byteVModel.color[i % _this2.byteVModel.color.length];
var obj = _Object$assign({
name: data[i].series,
stack: ' ',
data: data[i].y,
itemStyle: {
color: {
type: 'linear',
x: 0,
y: 0,
x2: 0,
y2: 1,
colorStops: [{
offset: 0,
color: color + (data[i].y[0] < 0 ? '30' : '')
}, {
offset: 1,
color: color + (data[i].y[0] < 0 ? '' : '30')
}],
global: false // 缺省为 false
}
}
}, _this2.theme.series.bar, data[i]);
var stackObj = {
name: data[i].series,
type: "bar",
barMaxWidth: _this2.theme.series.bar.barMaxWidth,
data: stackData,
// barMinHeight: 10,
stack: ' ',
itemStyle: {
color: "#F9F8F8",
shadowBlur: 5,
shadowColor: "#FFFFFF"
},
tooltip: {
show: false
}
};
arr.push(obj, stackObj);
};
for (var i = 0; i < data.length; i++) {
_loop(i);
}
this.byteVModel.series = arr;
this.componentInstance.setOption(this.byteVModel, true);
}
}]);
return BarBidirectional;
}(BarComponent);
export { BarBidirectional as default };