ajax实际请求数据展示echarts折线图

// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
//echarts等待框
  myChart.showLoading({  
        text : '正在努力的读取数据中...'
  }); 
  //向后台请求数据
$.ajax({
type:"post",
url:config+"makeStatistic.do",
async:true,
data:{
"quantity":quantity,
"operator":operator,
"number":tiNum
},
success:function(data){
//将需要的data值进行拼接之后放到option中,以变量的方式存在
var data=eval("("+data+")");
var borrow2=[];//单对单
var borrow3=[];//单对多
var brackets=[];//多对多
var carry1=[];// 单对单进位
var carry2=[];//单对多进位
var carry3=[];//多对多进位
var more2more=[];//单对多借位
var nobrackets=[];//多对多借位
var one2more=[];//有括号
var one2one=[];//无括号
var tiNumber=[];//题目数量
for(var x=data.data.length;x>0;x--){
tiNumber.push(x.toString())
}
for(var i=0;i<data.data.length;i++){
for(var y=0;y<data.data[i].length;y++){
if(data.data[i][y]==""||data.data[i][y]==null){
data.data[i][y]="0";
borrow2.push(data.data[i][0])
borrow3.push(data.data[i][1])
brackets.push(data.data[i][2])
carry1.push(data.data[i][3])
carry2.push(data.data[i][4])
carry3.push(data.data[i][5])
more2more.push(data.data[i][6])
nobrackets.push(data.data[i][7])
one2more.push(data.data[i][8])
one2one.push(data.data[i][9])
break
}
}
}
//将赋值过的数组拼接展示到图标中
  var  option = {
  //鼠标放入的提示文字及框
  tooltip: {
        trigger: 'axis'
    },
       
    //导航文字的布局方式及位置
    legend: {
    orient:'vertical',
    align:'left',
    right:'2%',
    top:'20%',
    itemHeight:'20',
        data: [{
    name: '单对单',
    textStyle: {
        color: '#000080'
    }
},{
    name: '单对多',
    textStyle: {
        color: '#008B8B'
    }
},{
    name: '多对多',
    textStyle: {
        color: '#00FF7F'
    }
},{
    name: '单对单进位',
    textStyle: {
        color: '#698B22'
    }
},{
    name: '单对多进位',
    textStyle: {
        color: '#6E7B8B'
    }
},{
    name: '多对多进位',
    textStyle: {
        color: '#8A2BE2'
    }
},{
    name: '单对多借位',
    textStyle: {
        color: '#8B2323'
    }
},{
    name: '多对多借位',
    textStyle: {
        color: '#CD6889'
    }
},{
    name: '有括号',
    textStyle: {
        color: '#CD0000'
    }
},{
    name: '无括号',
    textStyle: {
        color: '#D02090'
    }
}
        ]
    },
    //折线图展示的位置
    grid: {
        left: '3%',
        right: '20%',
        bottom: '3%',
        containLabel: true
    },
    //X轴的坐标位置
xAxis: {
        type: 'category',
        boundaryGap: false,
        data: tiNumber
    },
    //Y轴的坐标位置
    yAxis: {
        type: 'value',
        min: 0,
max: 100,
        boundaryGap: false,
        data: ["0","20","40","60","80","100"]
    },
    //每个点的位置,name需和导航name对应
    series: [
        {
            name:'单对单',
            type:'line',
            data:borrow2
        },
        {
            name:'单对多',
            type:'line',
            data:borrow3
        },
        {
            name:'多对多',
            type:'line',
            data:brackets
        },
        {
            name:'单对单进位',
            type:'line',
            data:carry1
        },
        {
            name:'单对多进位',
            type:'line',
            data:carry2
        },
        {
            name:'多对多进位',
            type:'line',
            data:carry3
        },
        {
            name:'单对多借位',
            type:'line',
            data:more2more
        },
        {
            name:'多对多借位',
            type:'line',
            data:nobrackets
        },
        {
            name:'有括号',
            type:'line',
            data:one2more
        },
        {
            name:'无括号',
            type:'line',
            data:one2one
        }
    ]
};
// // 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
//隐藏等待框
setTimeout(function(){myChart.hideLoading()},2000)
}

});



这是自己的一个小学游戏折线图的部分,根据自己需求去更改json结构即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
展示一年的数据echarts折线图中,你可以按照以下步骤进行操作: 1. 引用中提供的代码,将echarts的库文件加载到页面中。 2. 创建一个div元素,设置它的id为"main",用于容纳图表。 3. 在script标签中,初始化echarts实例并指定图表的配置项和数据。配置项可以包括标题、图例、x轴和y轴等设置。 4. 使用ajax请求从后台获取数据,并在请求成功后更新图表的x轴和数据系列的值。 5. 在document.ready函数中调用ajax请求,可以实现页面加载后自动加载数据并更新图表。 以下是你可以参考的代码示例: ```javascript // 基于准备好的dom,初始化echarts实例 var myChart = echarts.init(document.getElementById('main')); // 指定图表的配置项和数据 var option = { // 设置标题 title: { text: '一年内价格涨幅趋势图' }, // 设置图例 legend: { data: ['价格'] }, // 设置x轴 xAxis: { data: [] }, // 设置y轴 yAxis: {}, // 设置数据系列 series: [{ name: '价格', type: 'line', // 折线图 data: [] }] }; // 设置图表的配置项 myChart.setOption(option); // 页面加载后自动加载数据 $(document).ready(function() { $.ajax({ type: "POST", url: "http://localhost:8080/getData", // 后台接口地址 dataType: "json", contentType: 'text/json,charset=utf-8', data: { id: 你的参数 }, success: function(jsonData) { // 更新图表的x轴和数据系列 myChart.setOption({ xAxis: { data: jsonData.months }, series: [{ name: '价格', data: jsonData.results }] }); } }); }); ``` 以上代码会将一年内的数据折线图的形式展示出来。你可以根据实际情况修改代码中的数据来源和参数设置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [ECharts图表组件使用](https://download.csdn.net/download/baidu_20608025/10210680)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [利用实体类转JSONObject,实现Echart趋势图动态显示向前一年数据](https://blog.csdn.net/qq_38902274/article/details/101061318)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值