欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第一个ECharts图表

程序员文章站 2022-07-02 11:37:15
...

ECharts是由百度团队开发的,可高度个性化定制的数据可视化图表库。它的底层依赖轻量级的Canvas类库ZRender,是一个纯JavaScript的图标库,兼容(IE8/9/10/11,Chrome,Firefox,Safari等)主流浏览器,可以运行在PC和移动设备上。

1.ECharts官网

http://echarts.baidu.com/index.html
第一个ECharts图表
随便点击一个图表
第一个ECharts图表
通过”实例“可以看出来,官网上有很多可以供数据显示的图表类型,并帮助我们生成好了大部分数据。
此次以折线图为例做一个展示。

2.echarts.js文件

下载路径:http://echarts.baidu.com/download.html
第一个ECharts图表
点击想要下载的类型后会自动下载,此次做为开发,我用的是源代码。
把下好的js文件放到项目中
第一个ECharts图表

3.后台数据返回

第一个ECharts图表
在controller层里,我返回了六个List<String>用于数据显示

4.前端

1.在html页面中引用echart.js文件
第一个ECharts图表
2.在body中准备一个div用于接收折线图,一定要指定div也就是图表的高度

<div id="sell_data" style="height:400px"></div>

3.js文件

//订单统计折线图
$(function() {

    var toPayList;
    var toconfirm;
    var done;
    var payexpired;
    var refunded;
    var datetime;

    $.ajax({
        type:"post",
        url:prefix+"/chart",
        async:false,
        success:function(d){
            //获得后台数据
            toPayList=d.toPayList
            datetime=d.datetime
            toconfirm=d.toconfirm
            done=d.done
            payexpired=d.payexpired
            refunded=d.refunded
        }
    });

    var option = {
        title: {
            text: '折线图堆叠'
        },
        tooltip: {
            trigger: 'axis'
        },
        legend: {
            data: ['待支付', '待确认', '已完成', '已过期', '已退款']//线名
        },
        grid: {
            left: '3%',
            right: '4%',
            bottom: '3%',
            containLabel: true
        },
        toolbox: {
            feature: {
                saveAsImage: {}
            }
        },
        xAxis: {
            type: 'category',
            boundaryGap: false,
            data:datetime
        },
        yAxis: {
            type: 'value'
        },
        series: [{
                name: '待支付',
                type: 'line',
                stack: '总量',
                data: toPayList
            },
            {
                name: '待确认',
                type: 'line',
                stack: '总量',
                data: toconfirm
            },
            {
                name: '已完成',
                type: 'line',
                stack: '总量',
                data: done
            },
            {
                name: '已过期',
                type: 'line',
                stack: '总量',
                data: payexpired
            },
            {
                name: '已退款',
                type: 'line',
                stack: '总量',
                data: refunded
            }
        ]
    };
    var myChart = echarts.init(document.getElementById('sell_data'));

    myChart.setOption(option);

});

5.效果展示

第一个ECharts图表

6.错误检查

1.html中是否成功引用echarts.js文件,路径是否写对?
2.后台数据是否为json或者数组形式?

相关标签: ECharts