您现在的位置是:网站首页 > ECharts 中的仪表盘与进度条图表文章详情

ECharts 中的仪表盘与进度条图表

陈川 ECharts 31181人已围观

在数据可视化领域,ECharts 是一款非常流行的开源图表库。它不仅能够创建各种类型的图表,包括折线图、柱状图、饼图等,还提供了丰富的定制选项和高度的灵活性,使得开发者可以根据具体需求构建出功能丰富、界面美观的数据展示界面。本文将重点探讨如何使用 ECharts 创建仪表盘和进度条图表,通过具体的示例代码来展示实现过程。

仪表盘图表

仪表盘图表通常用于展示关键指标(KPIs)或关键性能指标(KPIs),常用于监控系统状态或业务运营情况。在 ECharts 中,仪表盘图表可以利用自定义组件或通过特定配置来实现。

示例代码:创建基本仪表盘图表

首先,我们需要引入 ECharts 的 CSS 和 JS 文件到 HTML 页面中。以下是一个简单的 HTML 结构:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ECharts 仪表盘示例</title>
    <!-- 引入 ECharts CSS -->
    <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/echarts/5.4.3/echarts.css">
</head>
<body>
    <div id="chartContainer" style="width: 600px;height:400px;"></div>
    <!-- 引入 ECharts JS文件 -->
    <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.4.3/echarts.min.js"></script>
    <script>
        // 初始化ECharts实例
        var myChart = echarts.init(document.getElementById('chartContainer'));
        
        // 定义配置项
        var option = {
            title: {
                text: '仪表盘示例',
                subtext: '这是一个基础的仪表盘图表',
                x: 'center'
            },
            tooltip: {},
            legend: {
                orient: 'vertical',
                left: 'left',
                data: ['指标1', '指标2']
            },
            series: [
                {
                    name: '指标1',
                    type: 'gauge',
                    data: [{value: 70, name: '值'}],
                    detail: {
                        formatter: '{value}%',
                        color: '#FFD700'
                    }
                },
                {
                    name: '指标2',
                    type: 'gauge',
                    data: [{value: 85, name: '值'}],
                    detail: {
                        formatter: '{value}%',
                        color: '#00FFFF'
                    }
                }
            ]
        };

        // 设置配置项并渲染图表
        myChart.setOption(option);
    </script>
</body>
</html>

动态更新仪表盘数值

仪表盘图表支持动态更新数值,这使得它们非常适合实时监控应用。我们可以通过定时器或用户交互来更新数据:

setInterval(function() {
    option.series[0].data[0].value = Math.random() * 100; // 更新第一个仪表盘的数值
    option.series[1].data[0].value = Math.random() * 100; // 更新第二个仪表盘的数值
    myChart.setOption(option);
}, 2000); // 每隔2秒更新一次

进度条图表

进度条图表常用于展示任务的完成情况,例如下载进度、加载进度等。ECharts 提供了 progress 类型的图表来实现这一功能。

示例代码:创建基本进度条图表

<!-- ...HTML代码... -->
<script>
    var myChartProgress = echarts.init(document.getElementById('progressContainer'));
    
    var optionProgress = {
        title: {
            text: '进度条示例',
            x: 'center'
        },
        tooltip: {},
        series: [{
            name: '任务进度',
            type: 'progress',
            radius: '50%',
            percent: 50,
            detail: {
                formatter: '{value}%'
            },
            label: {
                normal: {
                    show: true,
                    position: 'inside'
                }
            },
            itemStyle: {
                normal: {
                    color: 'linear-gradient(135deg, #F7A35C, #FFD700)',
                    borderColor: '#000'
                }
            }
        }]
    };
    
    myChartProgress.setOption(optionProgress);
</script>
<div id="progressContainer" style="width: 200px;height:200px;"></div>

动态调整进度条

通过改变 percent 属性值,我们可以动态地调整进度条的完成度:

// 假设有一个定时器来模拟任务进度变化
var progressTimer = setInterval(function() {
    if (optionProgress.series[0].percent < 100) {
        optionProgress.series[0].percent += 5;
        myChartProgress.setOption(optionProgress);
    } else {
        clearInterval(progressTimer);
    }
}, 1000);

以上示例展示了如何在 ECharts 中创建仪表盘和进度条图表,以及如何动态更新这些图表以反映实时数据变化。通过这些基本示例,你可以进一步探索 ECharts 的更多功能和特性,以满足更复杂的数据可视化需求。

我的名片

网名:川

职业:前端开发工程师

现居:四川省-成都市

邮箱:chuan@chenchuan.com

站点信息

  • 建站时间:2017-10-06
  • 网站程序:Koa+Vue
  • 本站运行
  • 文章数量
  • 总访问量
  • 微信公众号:扫描二维码,关注我
微信公众号
每次关注
都是向财富自由迈进的一步