bytev-charts-beta1.0
Version:
测试版-1.0,版本号为小版本; 基于echarts和JavaScript及ES6封装的一个可以直接调用的图表组件库,内置主题设计,简单快捷,且支持用户自定义配置; npm 安装方式: npm install bytev-charts 若启动提示还需额外install插件,则运行 npm install @babel/runtime-corejs2 即可;
209 lines (187 loc) • 7.02 kB
JavaScript
import _Reflect$construct from "@babel/runtime-corejs2/core-js/reflect/construct";
import "core-js/modules/es.object.to-string.js";
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 "core-js/modules/es.array.concat.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 ProgressCircleComponent from '../ProgressCircleComponent.class.js';
/*
* 圆形斑马进度条
* */
var ProgressCircleZebra = /*#__PURE__*/function (_ProgressCircleCompon) {
_inherits(ProgressCircleZebra, _ProgressCircleCompon);
var _super = _createSuper(ProgressCircleZebra);
function ProgressCircleZebra() {
var _this;
_classCallCheck(this, ProgressCircleZebra);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = _super.call.apply(_super, [this].concat(args));
_defineProperty(_assertThisInitialized(_this), "name", 'ProgressCircleZebra');
_defineProperty(_assertThisInitialized(_this), "first", true);
return _this;
}
_createClass(ProgressCircleZebra, [{
key: "buildByteVModel",
value: function buildByteVModel() {
_get(_getPrototypeOf(ProgressCircleZebra.prototype), "buildByteVModel", this).call(this);
}
}, {
key: "setData",
value: function setData(data) {
_get(_getPrototypeOf(ProgressCircleZebra.prototype), "setData", this).call(this, data);
/*{
name: '生产量',
value: 20,
unit: '吨',
max: 100,
}*/
if (!data && !this.data) {
return;
}
if (!data) {
data = this.data;
} // if(data.name){
// let n = data.value / data.max * 100
// n = (n+'').indexOf('.')!=-1 ? n.toFixed(2) : n
// this.byteVModel.yAxis[0].data = [(data.name || '') + ' ' + n + '%']
// }
var colorOpacity1 = "rgba(".concat(this.theme.firstColorRgbaArr[0], ", ").concat(this.theme.firstColorRgbaArr[1], ", ").concat(this.theme.firstColorRgbaArr[2], ", 0.3)");
var colorOpacity2 = "rgba(".concat(this.theme.firstColorRgbaArr[0], ", ").concat(this.theme.firstColorRgbaArr[1], ", ").concat(this.theme.firstColorRgbaArr[2], ", 0.5)");
this.byteVModel.series = [{
"z": 9,
"type": "pie",
"minAngle": 1,
"spilt": true,
"clockwise": false,
"center": ["50%", "50%"],
"radius": ["65%", "75%"],
"label": {
"show": true,
"position": "center",
"formatter": function formatter(param) {
if (param.data.name) {
return '{name|' + param.data.name + '}' + '\n{per|' + (param.data.per || 0) + '%}' + '\n{hr| }\n{unit|' + param.data.value + (param.data.unit || '') + '}';
} else {
return '{per|' + (param.data.per || 0) + '%}' + '\n{hr| }\n{unit|' + param.data.value + (param.data.unit || '') + '}';
}
},
"rich": {
name: {
padding: [0, 0, 10, 0],
fontSize: 14,
align: 'center'
},
per: {
padding: [0, 0, 6, 0],
fontSize: 14,
align: 'center'
},
hr: {
// borderColor: '#8C8D8E',
borderColor: colorOpacity1 || '#8C8D8E',
borderWidth: 1,
height: 0,
align: 'center'
},
unit: {
padding: [8, 0, 0, 0],
fontSize: 14,
align: 'center'
}
}
},
"emphasis": {
disabled: true,
scale: false
},
"tooltip": {
"show": false
},
data: []
}, {
"type": "pie",
"silent": true,
"center": ["50%", "50%"],
"radius": ["59%", "60%"],
"label": {
"show": false
},
"emphasis": {
disabled: true,
scale: false
},
"tooltip": {
"show": false
},
data: [{
"value": 1,
"itemStyle": {
"color": colorOpacity2
}
}]
}, {
"type": "pie",
"silent": true,
"center": ["50%", "50%"],
"radius": ["80%", "81%"],
"label": {
"show": false
},
"emphasis": {
disabled: true,
scale: false
},
"tooltip": {
"show": false
},
data: [{
"value": 1,
"itemStyle": {
"color": colorOpacity2
}
}]
}]; // for(let i = 0 ; i < 100; i++){
for (var i = 0; i < 50; i++) {
this.byteVModel.series[0].data.push({
"name": data.name || '',
"value": data.value,
"unit": data.unit || '',
"per": data.per,
"spilt": true,
"emphasis": {
disabled: true,
scale: false
},
"itemStyle": {
// "color": i>data.per ? "transparent": this.byteVModel.color[0]
"color": i > data.per * 0.5 ? "transparent" : this.byteVModel.color[0]
}
}, {
"value": 0,
"name": data.name,
"spilt": true,
"emphasis": {
disabled: true,
scale: false
},
"itemStyle": {
"color": "transparent"
}
});
}
this.componentInstance.setOption(this.byteVModel);
}
}]);
return ProgressCircleZebra;
}(ProgressCircleComponent);
export { ProgressCircleZebra as default };