echarts 中 请求后台改变数据
function tablenumber() {
$.ajax({
type : "get",
url : "../res/error.json",
dataType : "json",
success : function(data){
console.log(data);
vm.SuccessNumber = data.SuccessNumber;
vm.failNumber = data.failNumber;
vm.malfunctionNumber = data.malfunctionNumber;
var arr = [];
arr[0] = {};
arr[0].value = data.malfunctionNumber;
arr[0].name = (arr[0].value / (data.failNumber + data.SuccessNumber)*100).toFixed(2) + '%';
arr[1] = {};
arr[1].value = data.failNumber;
arr[1].name = (arr[1].value / (data.failNumber + data.SuccessNumber)*100).toFixed(2) + '%';
arr[2] = {};
arr[2].value = data.SuccessNumber;
arr[2].name = (arr[2].value / (data.failNumber + data.SuccessNumber)*100).toFixed(2) + '%';
option.series[0].data=arr;
myChart.setOption(option);
//console.log(option.series[0].data)
var oLen=option.series[0].data.length;
var json=[];
for(var i=0;i<oLen;i++){
var num = option.series[0].data[i].value;
json.unshift(num/100);
}
json.forEach(function(t, i){
createCircle('small-chart' + i, t, colorpic[i])
})
// option.series[0].data[0].value = vm.malfunctionNumber;
// console.log(option.series[0].data[0].value);
}
})
}
var vm = new Vue({
el : "#app",
data(){
return{
SuccessNumber : "",
failNumber : "",
malfunctionNumber : "",
echarData: []
}
}
})
var myChart = echarts.init(document.getElementById('main'));
var names = ['成功数', '故障数', '失败数'];
var colors = ['#6562cc','#f3545a','#fac46f'];
option = {
grid: {
top: 0,
left: 0,
bottom: 0,
right: 0
},
tooltip: {
trigger: 'item',
formatter: function(params) {
return names[params.dataIndex] + ':' + params.value + ' (' + params.name + ')';
}
},
calculable: true,
series: [{
type: 'pie',
radius: [0, document.body.offsetWidth > 320 ? 110 : 90],
roseType: 'area',
animation: false,
// data: vm.echarData,
// data: [
// {
// value: 10,
// name: (10 / 100 * 100).toFixed(2) + '%'
// },
// {
// value: 20,
// name: (20 / 100 * 100).toFixed(2) + '%'
// },
// {
// value: 80,
// name: (80 / 100 * 100).toFixed(2) + '%'
// }
// ],
itemStyle: {
normal: {
color: function(params) {
return colors[params.dataIndex];
}
}
}
}]
};
// myChart.setOption(option);
// //console.log(option.series[0].data)
// var oLen=option.series[0].data.length;
// var json=[];
// for(var i=0;i<oLen;i++){
// var num = option.series[0].data[i].value;
// json.unshift(num/100);
// }
//console.log(typeof json);
/**
* @param {Object} id
* @param {Object} percent 百分比 0-1
* @param {Object} color 颜色
*/
function createCircle(id, percent, color) {
var wrap = document.getElementById(id);
var w = wrap.offsetWidth * 2;
var canvas = document.createElement('canvas');
canvas.height = w;
canvas.width = w;
wrap.appendChild(canvas);
var ctx = canvas.getContext("2d");
ctx.lineCap = 'round';
ctx.strokeStyle = color;
ctx.lineWidth = 12;
ctx.beginPath();
ctx.arc(w * 0.5 + 1, w * 0.5 + 2, w * 0.3 - 2, -0.5 * Math.PI, (percent - 0.25) * 2 * Math.PI);
ctx.stroke();
}
var colorpic=['#fac46f','#f3545a','#6562cc'];
echarts 中 请求后台改变数据的更多相关文章
- 一、表单和ajax中的post请求&&后台获取数据方法
一.表单和ajax中的post请求&&后台获取数据方法 最近要做后台数据接收,因为前台传来的数据太过于混乱,所以总结了一下前台数据post请求方法,顺便写了下相对应的后台接收方法. 前 ...
- struts2中从后台读取数据到<s:select>
看到网上好多有struts2中从后台读取数据到<s:select>的,但都 不太详细,可能是我自己理解不了吧!所以我自己做了 一个,其中可能 有很多不好的地方,望广大网友指出 结果如图 p ...
- servlet中请求转发获取数据等,,,
String uname= req.getParameter("uname"); 获取请求的字符串 req.setAttribute("str"," ...
- WebApi 中请求的 JSON 数据字段作为 POST 参数传入
使用 POST 方式请求 JSON 数据到服务器 WebAPI 接口时需要将 JSON 格式封装成数据模型接收参数.即使参数较少,每个接口仍然需要单独创建模型接收.下面方法实现了将 JSON 参数中的 ...
- echarts中饼状图数据太多进行翻页
echarts饼状图数据太多 echarts 饼状图内容太多怎么处理 有些时候,我们饼状图中echarts的数据可能会很多. 这个时候展示肯定会密密麻麻的.导致显示很凌乱 我们需要'翻页'类似表格展示 ...
- Angular4中使用后台去数据,Swiper不能滑动的解决方法(一)
Swiper是目前较为流行的移动端触摸滑动插件,因为其简单好用易上手,很受很多设计师的欢迎. 今天在使用Swiper的时候遇到这个问题: 使用angularjs动态循环生成swiper-slide ...
- Fetch请求后台的数据
<style> #btn{ width: 50px; height: 50px; background-color: red; } #output{ width: 100px; heigh ...
- ES6+Vue+webpack项目,在ie11中请求后台接口后数据更新,但是页面没有刷新?
因为ie11下,如果GET请求请求相同的URL,默认会使用之前请求来的缓存数据,而不会去请求接口获取最新数据,我用的解决方法是在每个请求发送前,拦截请求并给请求接口的URL后加一个时间戳(new Da ...
- echarts折线图动态改变数据时的一个bug
echarts折线图中当增加dataZoom,修改start大于0的时候,会出现折线混乱,变成竖直的线,绘制有问题. 解决方法,在dataZoom中增加filterMode: 'empty' http ...
随机推荐
- Implementing Software Timers - Don Libes
在看APUE习题10.5的时候提示了这篇文章,讲的非常清晰,设计也非常巧妙,所以把原文放在这里.值得自己去实现. Title: Implementing Software Timers By ...
- mongo集群的监控(一)
由于工作中总是遇到一些私有化部署和不同环境的mongo server异常,为了统一方便的监控其运行情况,我筛选了多个工具,最终选择了motop. motop是一款用python编写的实时监控工具,可以 ...
- CON1023 明明的计划
比赛说明 邀请码:a08f 来源:自出 描述:无 难度:NOIP提高组day1 赛时答疑:私信询问 奖励:无 试题列表 赛题 #A:数学题赛题 #B:明明泡妹子赛题 #C:明明去酒店 U5012 数学 ...
- ⭐linux主次设备号介绍
1.主设备号与次设备号的功能 在Linux内核中,主设备号标识设备对应的驱动程序,告诉Linux内核使用哪一个驱动程序为该设备(也就是/dev下的设备文件)服务:而次设备号则用来标识具体且唯一的某个设 ...
- Getting Installation aborted (Status 7) ApplyParsePerms: lsetfilecon of /syst...【转】
OTA升级失败:原文http://en.miui.com/thread-112197-1-1.html Do you get this "Status 7" error in Re ...
- PCB决策引擎:多维决策表转决策树
准备设计一个PCB使用的决策引擎,需要用到决策表,而单维决策表不能满足业务要求, 这里主要是为了实现:用户编辑的是决策表,实际底层存储的是树结构,树的的各个节点挂上业务决策逻辑. 这里将多维决策表转决 ...
- PCB MS SQL 小写转大写
由于SQL Server允许为小写进入 ,导致数据库中存在小写,在数据集成到MES或ERP时报错,Oracle要求大写导致, 需转换为大写,可通过以下语句,查询所有小写数据,再更新.
- go package包的使用
一.标准库 引入 在我们之前所写的所以代码中,我们基本上可以看到fmt这个导入的包,但是我们却不知道如何去写这种包. 如果我们可以自己去写,那么我们就可以将一个功能的集合统一的放入包中,便于以后使用, ...
- Java 位运算符 &、|、^、~、<<、>>、>>>
撸了N久的代码,但是突然冒出来个位运算,我就蒙蔽了,这是什么?我是谁?我在干什么?我在哪? 1)闲扯 关于位运算符无非也就 与(&).或(|).异或(^).取反(~).左移(<< ...
- Cracking the Coding Interview 8.7
Given a infinite number of quarters(25cents), dimens(10cents), nickels(5cents) and pennies(1cent), w ...