Echats-自定义图表2

效果图:

代码:

复制代码
<!DOCTYPE html>
<html lang="zh-cmn-Hans">

<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>图表</title>
    <style>
        #main {
            width: 237px;
            height: 250px;
        }
    </style>
</head>

<body>
    <div id="app">
        <div id="main"></div>
    </div>
    <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts@5/dist/echarts.min.js"></script>
    <script>
        var chartDom = document.getElementById('main');
        var myChart = echarts.init(chartDom);
        var option;

        option = {
            series: [
                {
                    type: 'gauge',
                    radius: '100%', // 圆盘大小
                    splitNumber: 10, // 刻度线单位
                    center: ['50%', '50%'], // 主体位置
                    startAngle: 216,
                    endAngle: -36,
                    z: 1,//y轴
                    min: 0,
                    max: 1,
                    itemStyle: {
                        color: '#2f9bff'
                    },
                    progress: {
                        show: true,
                        width: 12
                    },
                    axisLine: {
                        lineStyle: {
                            width: 12
                        }
                    },
                    // 中心圆点
                    anchor: {
                        show: false
                    },
                    pointer: {
                        show: false
                    },
                    // 小刻度线
                    axisTick: {
                        distance: 6,
                        length: 2,
                        lineStyle: {
                            color: '#666',
                            width: 1
                        }
                    },
                    splitLine: {
                        show: false // 不展示
                    },
                    axisLabel: {
                        show: false // 不展示
                    },
                    title: {
                        offsetCenter: [0, '85%'],
                        fontSize: 15,
                        color: 'rgba(37,35,58,0.4)'
                    },
                    detail: {
                        fontSize: 34,
                        offsetCenter: [0, '62%'],
                        valueAnimation: true,
                        formatter(value) {
                            return `${(value * 100).toFixed(2)}%`; // 计算百分率
                        },
                        color: '#2F9BFF'
                    },
                    data: [
                        {
                            value: 0.7,
                            name: '累计执行率'
                        }
                    ]
                },
                {
                    type: 'gauge',
                    radius: '50%', // 圆盘大小
                    splitNumber: 5, // 刻度线单位
                    center: ['50%', '50%'], // 主体位置
                    startAngle: 216,
                    endAngle: -36,
                    min: 0,
                    max: 1,
                    // itemStyle: {
                    //   color: '#ccc'
                    // },
                    // progress: {
                    //   show: true,
                    //   width: 12
                    // },
                    axisLine: {
                        lineStyle: {
                            width: 18,
                            color: [[1, '#DCE4FE']]
                        }
                    },
                    // 中心圆点
                    anchor: {
                        show: true,
                        size: 6,
                        showAbove: true, // 固定点是否显示在指针上面
                        itemStyle: {
                            borderColor: '#fff',
                            borderWidth: 8
                        }
                    },
                    pointer: {
                        width: 2,
                        offsetCenter: [0, '24%'],
                        icon: 'path://M2.9,0.7L2.9,0.7c1.4,0,2.6,1.2,2.6,2.6v115c0,1.4-1.2,2.6-2.6,2.6l0,0c-1.4,0-2.6-1.2-2.6-2.6V3.3C0.3,1.9,1.4,0.7,2.9,0.7z',
                        length: '220%',
                        itemStyle: {
                            color: '#1FA4FC'
                        }
                    },
                    // 小刻度线
                    axisTick: {
                        distance: -78,
                        length: 13,
                        lineStyle: {
                            color: 'rgba(255, 255, 255, 0.6)',
                            width: 3
                        }
                    },
                    splitLine: {
                        show: false // 不展示
                    },
                    axisLabel: {
                        show: false // 不展示
                    },
                    title: {
                        show: false
                    },
                    detail: {
                        show: false
                    },
                    data: [
                        {
                            value: 0.7,
                            name: '累计执行率'
                        }
                    ]
                }
            ]
        };

        option && myChart.setOption(option);
    </script>
</body>

</html>
相关推荐
这可不简单2 天前
方便易懂的自适应方案---echarts和dom样式大小自适应
前端·vue.js·echarts
八月林城3 天前
echarts在uniapp中使用安卓真机运行时无法显示的问题
android·uni-app·echarts
路很长OoO5 天前
鸿蒙手写ECharts_手势惯性(条形统计图)
echarts·harmonyos·canvas
Alice_hhu6 天前
ResizeObserver 解决 echarts渲染不出来,内容宽度为 0的问题
前端·javascript·echarts
纯阳阳6 天前
如何用echart绘制圆柱
前端·echarts
qq_106138345710 天前
SpringBoot+Vue+Echarts实现可视化图表的渲染
vue.js·spring boot·echarts
Shi_haoliu12 天前
前端vue2-完全前端生成pdf->pdf-lib,html2canvas+jspdf,原生打印,三种方式(打印带有echarts图的pdf)
前端·javascript·vue.js·git·pdf·echarts·html5
全宇宙最最帅气的哆啦A梦小怪兽12 天前
【Axure结合Echarts绘制图表】
前端·javascript·echarts·产品经理·原型
阿乐今天敲代码没13 天前
echarts实现项目进度甘特图
前端·echarts·甘特图
阿乐今天敲代码没16 天前
echarts定制化柱状图——条纹柱状图
前端·echarts