Echart通过Ajax获取数据

本文介绍了一个使用ECharts实现的省份分布情况的柱状图案例。该图表从前端到后端进行了完整的展示,包括了如何初始化图表、设置图表样式、配置数据请求及响应等关键步骤。通过该实例,读者可以了解到如何结合前端技术和后端接口来动态更新图表数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、前端页面:

var myChartState = null;
function getStateChart() {
    myChartState = echarts.init(document.getElementById('state'));
    // 定义图表options
    var options = {
            title : {
                    text : '省份分布情况'
            },
            toolbox : {
                    right : '35',
                    itemSize : 20,
                    itemGap : 20,
                    feature : {
                            saveAsImage : {
                                    title : '保存为图片'
                            }
                    },
            },
            tooltip : {
                trigger: 'axis'
            },
            xAxis : {
                    type : 'category',
                    data : [],
                    name : '省份'
            },
            yAxis : {
                    type : 'value',
                    name : '人数(个)'
            },
            series: [{
                data: [],
                type:'bar',name:'人数',
                label:{
                    normal:{
                        show:true, position: 'top',
                        textStyle: { color: 'black' }
                }}
            }]
    };
    myChartState.setOption(options);
    myChartState.hideLoading();
    // 随屏幕分辨率自适应
    window.onresize = myChartState.resize;
}
$(function() {
    getStateChart();
    //延迟加载
    setTimeout(function(){
        $.ajax({
            url:url,
            method:'GET',
            //data:formData,
            dataType:'json',
            success:function(res){
                if(res.status==0){
                    myChartState.showLoading({text: '正在努力的读取数据中...'});
                    myChartState.setOption({
                        xAxis : {
                                data : res.dataState
                        },
                        series: [{
                            data: res.serieState
                        }]
                    });
                    myChartState.hideLoading(); 
                }
            }
        });
    }, 500);
});

2、后台代码:

public @ResponseBody Map<String, Object> echart(){
    Map<String, Object> map=new HashMap<>();

    List<Object> listData=new ArrayList<>();
    List<Object> listSerie=new ArrayList<>();

    map.put("status", 0);
    map.put("dataState", listData);
    map.put("serieState", listSerie);    
    return map;
}

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值