diff --git a/src/packages/components/Charts/Bars/Bar3d/config.ts b/src/packages/components/Charts/Bars/Bar3d/config.ts
new file mode 100644
index 0000000..54ddf9f
--- /dev/null
+++ b/src/packages/components/Charts/Bars/Bar3d/config.ts
@@ -0,0 +1,79 @@
+import { echartOptionProfixHandle, PublicConfigClass } from '@/packages/public'
+import { Bar3DConfig } from './index'
+import { CreateComponentType } from '@/packages/index.d'
+import cloneDeep from 'lodash/cloneDeep'
+import dataJson from './data.json'
+
+export const includes = ['legend', 'xAxis', 'yAxis', 'grid', 'dataZoom']
+export const seriesItem = {
+ type: 'bar',
+ barWidth: 19,
+
+ itemStyle: {
+ color: {
+ type: 'linear',
+ x: 0,
+ y: 1,
+ x2: 0,
+ y2: 0,
+ colorStops: [
+ { offset: 0, color: '#01c5ff' }, // 底部颜色(深蓝)
+ { offset: 1, color: '#fbff01ff' } // 顶部颜色(浅蓝)
+ ]
+ },
+ borderRadius: 2
+ },
+
+}
+export const option = {
+ tooltip: {
+ show: false,
+ trigger: 'axis',
+ axisPointer: {
+ show: false,
+ type: 'shadow'
+ }
+ },
+ legend: {
+ show: false // 新增或修改这行,隐藏图例(即“当日作业情况”文字和旁边的小点)
+ },
+ xAxis: {
+ show: false,
+ type: 'category'
+ },
+ yAxis: {
+ show: false,
+ type: 'value',
+ min: 0,
+ max: 100,
+ interval: 25
+ },
+ dataZoom: [
+ {
+ show: false,
+ height: 15,
+ start: 0,
+ end: 100
+ },
+ {
+ show: false,
+ yAxisIndex: 0,
+ filterMode: 'empty',
+ width: 15,
+ height: 200,
+ showDataShadow: false,
+ left: '93%',
+ start: 0,
+ end: 100
+ },
+ ],
+ dataset: { ...dataJson },
+ series: [seriesItem]
+}
+
+
+export default class Config extends PublicConfigClass implements CreateComponentType {
+ public key = Bar3DConfig.key
+ public chartConfig = cloneDeep(Bar3DConfig)
+ public option = echartOptionProfixHandle(option, includes)
+}
diff --git a/src/packages/components/Charts/Bars/Bar3d/config.vue b/src/packages/components/Charts/Bars/Bar3d/config.vue
new file mode 100644
index 0000000..ea63259
--- /dev/null
+++ b/src/packages/components/Charts/Bars/Bar3d/config.vue
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 展示标签
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/packages/components/Charts/Bars/Bar3d/data.json b/src/packages/components/Charts/Bars/Bar3d/data.json
new file mode 100644
index 0000000..3797d14
--- /dev/null
+++ b/src/packages/components/Charts/Bars/Bar3d/data.json
@@ -0,0 +1,9 @@
+{
+ "dimensions": ["场所分布情况", "当日作业分布情况"],
+ "source": [
+ {
+ "场所分布情况": 150,
+ "当日作业分布情况": 75
+ }
+ ]
+}
diff --git a/src/packages/components/Charts/Bars/Bar3d/index.ts b/src/packages/components/Charts/Bars/Bar3d/index.ts
new file mode 100644
index 0000000..77e4eb1
--- /dev/null
+++ b/src/packages/components/Charts/Bars/Bar3d/index.ts
@@ -0,0 +1,14 @@
+import { ConfigType, PackagesCategoryEnum, ChartFrameEnum } from '@/packages/index.d'
+import { ChatCategoryEnum, ChatCategoryEnumName } from '../../index.d'
+
+export const Bar3DConfig: ConfigType = {
+ key: 'Bar3D',
+ chartKey: 'VBar3D',
+ conKey: 'VCBar3D',
+ title: '3D柱状图',
+ category: ChatCategoryEnum.BAR,
+ categoryName: ChatCategoryEnumName.BAR,
+ package: PackagesCategoryEnum.CHARTS,
+ chartFrame: ChartFrameEnum.ECHARTS,
+ image: 'bar_x.png'
+}
diff --git a/src/packages/components/Charts/Bars/Bar3d/index.vue b/src/packages/components/Charts/Bars/Bar3d/index.vue
new file mode 100644
index 0000000..35a81ec
--- /dev/null
+++ b/src/packages/components/Charts/Bars/Bar3d/index.vue
@@ -0,0 +1,97 @@
+
+
+
+
+
diff --git a/src/packages/components/Charts/Bars/index.ts b/src/packages/components/Charts/Bars/index.ts
index 97aaedc..d58a459 100644
--- a/src/packages/components/Charts/Bars/index.ts
+++ b/src/packages/components/Charts/Bars/index.ts
@@ -7,6 +7,7 @@ import { BarRankConfig } from './BarRank'
import { BarRank2Config } from './BarRank2'
import { BarRank3Config } from './BarRank3'
import { BarLinearConfig } from './BarLinear/index'
+import { Bar3DConfig } from './Bar3d/index'
export default [
BarCommonConfig,
@@ -17,5 +18,6 @@ export default [
BarRankConfig,
BarRank2Config,
BarRank3Config,
- BarLinearConfig
+ BarLinearConfig,
+ Bar3DConfig
]
diff --git a/src/packages/components/Charts/Pies/Pie/config.ts b/src/packages/components/Charts/Pies/Pie/config.ts
new file mode 100644
index 0000000..c976b29
--- /dev/null
+++ b/src/packages/components/Charts/Pies/Pie/config.ts
@@ -0,0 +1,100 @@
+
+import { echartOptionProfixHandle, PublicConfigClass } from '@/packages/public'
+import { CreateComponentType } from '@/packages/index.d'
+import { PieConfig } from './index'
+import cloneDeep from 'lodash/cloneDeep'
+import dataJson from './data.json'
+
+export const includes = ['legend']
+
+
+export const indicatorPlacements = [
+ {
+ label: '内部',
+ value: 'inside'
+ },
+ {
+ label: '外部',
+ value: 'outside'
+ }
+]
+
+export enum FontWeightEnum {
+ NORMAL = '常规',
+ BOLD = '加粗',
+}
+
+export const FontWeightObject = {
+ [FontWeightEnum.NORMAL]: 'normal',
+ [FontWeightEnum.BOLD]: 'bold',
+}
+
+export enum LegendOrientEnum {
+ HORIZONTAL = '水平',
+ VERTICAL = '垂直'
+}
+
+export const legendOrientObject = {
+ [LegendOrientEnum.HORIZONTAL]: 'horizontal',
+ [LegendOrientEnum.VERTICAL]: 'vertical'
+}
+
+const option = {
+ renderer: 'canvas',
+ dataset: dataJson,
+ labelStyleType: '样式一',
+ labelColor1: '#ffffff',
+ labelColor2: '#ffffff',
+ labelPadding1: "0,3,0,-5",
+ labelPadding2: "0,3,-10,5",
+ showDataLabels: false,
+ showLegendValue: false,
+ showLegendPercent: false,
+ showLableLineImage: false,
+ labelLineColor: '#ffffff',
+ lableLineLength1: 30,
+ lableLineLength2: 40,
+ series: [],
+ legend: {
+ itemGap: 10,
+ x: 0,
+ y: 0,
+ orient: 'vertical',
+ // top: "center",
+ //@ts-ignore
+ data: dataJson,
+ icon: 'rectangle',
+ textStyle: {
+ color: '#fff',
+ fontSize: 14,
+ padding: [5, 0],
+ }
+ },
+ grid3D: {
+ show: false,
+ boxHeight: 3, //圆环的高度
+ //@ts-ignore
+ left: '-15%',
+ //@ts-ignore
+ top: '5%', //3d饼图的位置
+ viewControl: {
+ //3d效果可以放大、旋转等,请自己去查看官方配置
+ alpha: 15, //角度
+ distance: 280, //调整视角到主体的距离,类似调整zoom
+ rotateSensitivity: 0, //设置为0无法旋转
+ zoomSensitivity: 1, //设置为0无法缩放
+ panSensitivity: 1, //设置为0无法平移
+ autoRotate: false, //自动旋转
+ },
+ },
+}
+
+
+export default class Config extends PublicConfigClass implements CreateComponentType {
+ public key: string = PieConfig.key
+
+ public chartConfig = cloneDeep(PieConfig)
+
+ // 图表配置项
+ public option = echartOptionProfixHandle(option, includes)
+}
\ No newline at end of file
diff --git a/src/packages/components/Charts/Pies/Pie/config.vue b/src/packages/components/Charts/Pies/Pie/config.vue
new file mode 100644
index 0000000..e35f634
--- /dev/null
+++ b/src/packages/components/Charts/Pies/Pie/config.vue
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 显示指标线
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 指标线显示图片
+
+
+
+
+
+ 图例显示数值
+
+
+
+
+
+ 图例显示百分比
+
+
+
+
+
+
+
diff --git a/src/packages/components/Charts/Pies/Pie/data.json b/src/packages/components/Charts/Pies/Pie/data.json
new file mode 100644
index 0000000..e7cd1b0
--- /dev/null
+++ b/src/packages/components/Charts/Pies/Pie/data.json
@@ -0,0 +1,27 @@
+[
+ {
+ "name": "分类一",
+ "value": 94,
+ "itemStyle": { "color": "#9751c2" },
+ "ratio": 0,
+ "isSelected": true
+ },
+ {
+ "name": "分类二",
+ "value": 82,
+ "itemStyle": { "color": "#199ed4" },
+ "ratio": 0
+ },
+ {
+ "name": "分类三",
+ "value": 78,
+ "itemStyle": { "color": "#06c1cd" },
+ "ratio": 0
+ },
+ {
+ "name": "分类四",
+ "value": 60,
+ "itemStyle": { "color": "#f7a35c" },
+ "ratio": 0
+ }
+]
\ No newline at end of file
diff --git a/src/packages/components/Charts/Pies/Pie/index.ts b/src/packages/components/Charts/Pies/Pie/index.ts
new file mode 100644
index 0000000..d5a820b
--- /dev/null
+++ b/src/packages/components/Charts/Pies/Pie/index.ts
@@ -0,0 +1,23 @@
+// 公共类型声明
+import { ConfigType, PackagesCategoryEnum } from '@/packages/index.d'
+// 当前[信息模块]分类声明
+import { ChatCategoryEnum,ChatCategoryEnumName } from '../../index.d'
+
+export const PieConfig: ConfigType = {
+ // 唯一key
+ key: 'Pie',
+ // 图表组件渲染 Components 格式: V + key
+ chartKey: 'VPie',
+ // 配置组件渲染 Components 格式: VC + key
+ conKey: 'VCPie',
+ // 名称
+ title: '3D环状饼图',
+ // 子分类目录
+ category: ChatCategoryEnum.PIE,
+ // 子分类目录
+ categoryName: ChatCategoryEnumName.PIE,
+ // 包分类
+ package: PackagesCategoryEnum.CHARTS,
+ // 图片
+ image: 'pie_3d.png'
+}
\ No newline at end of file
diff --git a/src/packages/components/Charts/Pies/Pie/index.vue b/src/packages/components/Charts/Pies/Pie/index.vue
new file mode 100644
index 0000000..1031df6
--- /dev/null
+++ b/src/packages/components/Charts/Pies/Pie/index.vue
@@ -0,0 +1,891 @@
+
+
+
+
+
+
+
diff --git a/src/packages/components/Charts/Pies/index.ts b/src/packages/components/Charts/Pies/index.ts
index 8754aa0..86c615c 100644
--- a/src/packages/components/Charts/Pies/index.ts
+++ b/src/packages/components/Charts/Pies/index.ts
@@ -2,5 +2,6 @@ import { PieCommonConfig } from './PieCommon/index'
import { PieCircleConfig } from './PieCircle/index'
import { PieThreeConfig } from './PieThree'
import { PieMultConfig } from './PieMult/index'
+import {PieConfig} from './Pie/index'
-export default [PieCommonConfig, PieCircleConfig, PieThreeConfig, PieMultConfig]
\ No newline at end of file
+export default [PieCommonConfig, PieCircleConfig, PieThreeConfig, PieMultConfig, PieConfig]