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 ...
随机推荐
- nginx access 日志位置
nginx access 日志位置 /var/log/nginx tail -f access.log
- 飘逸的python - 实现一个极简的优先队列
一个队列至少满足2个方法,put和get. 借助最小堆来实现. 这里按"值越大优先级越高"的顺序. #coding=utf-8 from heapq import heappush ...
- java 工厂方法模式简单实例
工厂方法模式:也叫工厂模式,属于类创建型模式,工厂父类(接口)负责定义产品对象的公共接口,而子类工厂则负责创建具体的产品对象. 目的:是为了把产品的实例化操作延迟到子类工厂中完成,通过工厂子类来决定究 ...
- ListView实现简单列表
ListView实现简单列表 效果图: 啥也没干的ListView张这样: fry.Activity01 package fry; import com.example.ListView.R; imp ...
- Java-JRE:JRE百科
ylbtech-Java-JRE:JRE百科 JRE是Java Runtime Environment缩写,指Java运行环境,是Sun的产品.运行JAVA程序所必须的环境的集合,包含JVM标准实现及 ...
- Eclipse项目包上出现红叉如何去除
Eclipse项目包上出现红叉是因为jdk的版本不一致. 项目名--->Properties----->Java Compiler 图1:
- Django day06 模版层(一) 变量和深度查询
一.模版语法之变量: 1 - {{ 变量 }} ******重要*******{#这个相当于print了该变量#} def index(request): name = 'prince' #字符串 ...
- Python 38 sql基础
数据库服务器中存放的是 库(文件加) .表(文件) .表里面是记录(一行数据) 增 删 改 查 1.库相关 创建------------------create databa ...
- xcode制作越狱后ipa安装文件
正常情况下发布测试版给用户需要问到对方设备ID并添加到开发者证书里去感觉有点麻烦,如果是已越狱过的机器可以使用xcode制作ipa文件,并直接用itunes同步进去,这样方便多了. 将运行目标选为iO ...
- 使用idea 搭建一个 SpringBoot + Mybatis + logback 的maven 项
(注意项目名不能有大写......),把项目类型 改成 War 类型.(web项目) 使用 mybatis-generator 插件 生成 实体类 和 接口 在 resources 目录 中 新建一个 ...