diff --git a/data-room-ui/package-lock.json b/data-room-ui/package-lock.json index d7a2cc48..d550a0b4 100644 --- a/data-room-ui/package-lock.json +++ b/data-room-ui/package-lock.json @@ -1,6 +1,6 @@ { "name": "@gcpaas/data-room-ui", - "version": "1.0.1-2023083002-Alpha", + "version": "1.0.1-2023091801-Alpha", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -3397,6 +3397,27 @@ "whatwg-fetch": "^3.6.2" }, "dependencies": { + "@vue/vue-loader-v15": { + "version": "npm:vue-loader@15.10.2", + "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-15.10.2.tgz", + "integrity": "sha512-ndeSe/8KQc/nlA7TJ+OBhv2qalmj1s+uBs7yHDRFaAXscFTApBzY9F1jES3bautmgWjDlDct0fw8rPuySDLwxw==", + "dev": true, + "requires": { + "@vue/component-compiler-utils": "^3.1.0", + "hash-sum": "^1.0.2", + "loader-utils": "^1.1.0", + "vue-hot-reload-api": "^2.3.0", + "vue-style-loader": "^4.1.0" + }, + "dependencies": { + "hash-sum": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz", + "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", + "dev": true + } + } + }, "acorn-walk": { "version": "8.2.0", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", @@ -3468,6 +3489,26 @@ "tapable": "^2.0.0" } }, + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -3685,47 +3726,6 @@ "lodash": "^4.17.4" } }, - "@vue/vue-loader-v15": { - "version": "npm:vue-loader@15.10.2", - "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.2.tgz", - "integrity": "sha512-ndeSe/8KQc/nlA7TJ+OBhv2qalmj1s+uBs7yHDRFaAXscFTApBzY9F1jES3bautmgWjDlDct0fw8rPuySDLwxw==", - "dev": true, - "requires": { - "@vue/component-compiler-utils": "^3.1.0", - "hash-sum": "^1.0.2", - "loader-utils": "^1.1.0", - "vue-hot-reload-api": "^2.3.0", - "vue-style-loader": "^4.1.0" - }, - "dependencies": { - "hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", - "dev": true - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, "@vue/vue2-jest": { "version": "27.0.0", "resolved": "https://registry.npmjs.org/@vue/vue2-jest/-/vue2-jest-27.0.0.tgz", diff --git a/data-room-ui/packages/Echarts/3D图/3D固定柱状图.js b/data-room-ui/packages/Echarts/3D图/3D固定柱状图.js index 25ffc7f9..8df1d9f6 100644 --- a/data-room-ui/packages/Echarts/3D图/3D固定柱状图.js +++ b/data-room-ui/packages/Echarts/3D图/3D固定柱状图.js @@ -1,8 +1,3 @@ -/* - * @description: 配置,参考https://g2plot.antv.antgroup.com/examples - * @Date: 2023-03-27 14:38:23 - * @Author: xing.heng - */ import * as echarts from 'echarts' // 配置版本号 const version = '2023071001' diff --git a/data-room-ui/packages/EchartsRender/index.vue b/data-room-ui/packages/EchartsRender/index.vue index d3ffb5ec..7e6c9b84 100644 --- a/data-room-ui/packages/EchartsRender/index.vue +++ b/data-room-ui/packages/EchartsRender/index.vue @@ -225,6 +225,28 @@ export default { const seriesField = config.setting.find(item => item.optionField === 'seriesField')?.value const seriesFieldList = [...new Set(data.map(item => item[seriesField]))] option.series = [] + const offsetArr = [] + let index = 0 + let barWidth = 10 + if (seriesFieldList.length % 2 === 0) { + const length = seriesFieldList.length / 2 + for (let i = 0; i < length; i++) { + const offsetX = (parseInt('10%') + parseInt('50%')) * (2 * i + 1) + offsetArr.push(offsetX) + offsetArr.unshift(-offsetX) + } + } else { + const length = Math.ceil(seriesFieldList.length / 2) + for (let i = 0; i < length; i++) { + if (i === 0) { + offsetArr.push(0) + } else { + const offsetX = (parseInt('20%') + parseInt('100%')) * i + offsetArr.push(offsetX) + offsetArr.unshift(-offsetX) + } + } + } for (const seriesFieldItem of seriesFieldList) { const seriesData = (data.filter(item => item[seriesField] === seriesFieldItem))?.map(item => item[yField]) const seriesItem = [ @@ -233,8 +255,8 @@ export default { type: 'pictorialBar', tooltip: { show: false }, symbol: 'diamond', - symbolSize: [30, 10], - symbolOffset: ['-60%', -5], + symbolSize: [barWidth, barWidth / 2], + symbolOffset: [offsetArr[index] + '%', -barWidth / 4], symbolPosition: 'end', z: 15, zlevel: 2, @@ -245,7 +267,7 @@ export default { name: seriesFieldItem, type: 'bar', barGap: '20%', - barWidth: 30, + barWidth: barWidth, itemStyle: { normal: { color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ @@ -276,8 +298,8 @@ export default { type: 'pictorialBar', tooltip: { show: false }, symbol: 'diamond', - symbolSize: [30, 10], - symbolOffset: ['-60%', 5], + symbolSize: [barWidth, barWidth / 2], + symbolOffset: [offsetArr[index] + '%', barWidth / 4], zlevel: 2, z: 15, color: 'rgb(2, 192, 255)', @@ -291,7 +313,7 @@ export default { barGap: '20%', data: shadowData, zlevel: 1, - barWidth: 30, + barWidth: barWidth, itemStyle: { normal: { color: 'rgba(9, 44, 76,.8)' @@ -303,8 +325,8 @@ export default { type: 'pictorialBar', tooltip: { show: false }, symbol: 'diamond', - symbolSize: [30, 10], - symbolOffset: ['-60%', -5], + symbolSize: [barWidth, barWidth / 2], + symbolOffset: [offsetArr[index] + '%', -barWidth / 4], symbolPosition: 'end', z: 15, color: 'rgb(15, 69, 133)', @@ -312,6 +334,7 @@ export default { data: shadowData } ] + index++ option.series.push(...seriesItem) } } else {