数据多js平均时间取固定条数展示,echarts数据多处理数据
js代码:
function getfailurerate(start,end,ip) {
$.ajax( {
url : "report/getvirtual.action",
type : "POST",
data : {
'ip' : ip,
'startime' : start,
'endtime' : end,
},
timeout : 180000,
async : true,
beforeSend: function(){
MaskUtil.mask();
var net = new Array();
var createtime = new Array();
var lnet = new Array();
var lnet_out = new Array();
var net_out = new Array();
var net_avg = new Array();
var cpu = new Array();
var mem = new Array();
vhostNet(net,net_out,lnet,lnet_out,net_avg,createtime);
vhostCpu(cpu,createtime);
vhostMem(mem,createtime);
},
success : function(data) {
MaskUtil.unmask();
var data = eval(data);
if(data== null || data.length<1){
alert("暂无数据!");
}
var net = new Array();
var createtime = new Array();
var lnet = new Array();
var lnet_out = new Array();
var net_out = new Array();
var net_avg = new Array();
var cpu = new Array();
var mem = new Array();
var sum = 0;
var count = 0;
//如果大于三个月
var smonth = start.substring(8,10);
var emonth = end.substring(8,10);
// if((emonth - smonth) > 3){
//如果大于多少条
var item = 1000;//条数
if(data.length > item){
var timestamp = parseInt(new Date().getTime()/1000);
// start = start.substring(0,19);如果时间格式有问题时使用
// start = start.replace(/-/g,'/');
var s = new Date(data[0].createtime.substring(0, 16)).getTime();
sum = s;
var e = new Date(data[data.length-1].createtime.substring(0, 16)).getTime();
//计算起止时间的平均值,用来每次添加数据后增长时间
count = parseInt((e-s)/item);
for(var j = 0 ; j<data.length; j++){
// var sumdate = getTimeDate(sum + count);
var sumdate = getTimeDate(sum);//不加count会多一条开始时间的数据
var ctime = data[j].createtime.substring(0, 16);
var date1 = new Date(sumdate);
var date2 = new Date(ctime);
//如果所要时间小于数据时间或与数据时间相等,添加数据并增长所要时间
if(date1 < date2 || date1 - date2 == 0){
net.push(data[j].net);
createtime.push(data[j].createtime);
lnet.push(data[j].lnet);
lnet_out.push(data[j].lnet_out);
net_out.push(data[j].net_out);
net_avg.push(data[j].net_avg);
cpu.push(data[j].cpu);
mem.push(data[j].memory);
sum = sum + count;
}
}
var sumdate = getTimeDate(sum);
}else{
//如果不符合条件,走普通
for(var j = 0 ; j < data.length; j++){
net.push(data[j].net);
createtime.push(data[j].createtime);
lnet.push(data[j].lnet);
lnet_out.push(data[j].lnet_out);
net_out.push(data[j].net_out);
net_avg.push(data[j].net_avg);
cpu.push(data[j].cpu);
mem.push(data[j].memory);
}
}
vhostNet(net,net_out,lnet,lnet_out,net_avg,createtime);
vhostCpu(cpu,createtime);
vhostMem(mem,createtime);
}
});
}
function getTimeDate(timedate) {
// var s = new Date(d);
// var sdate = (s.getFullYear()) + "-" +
// (s.getMonth() + 1) + "-" +
// (s.getDate()) + " " +
// (s.getHours()) + ":" +
// (s.getMinutes()) + ":" +
// (s.getSeconds());
}
function getTimeDate(timedate) {
var s = new Date(timedate);
var date = (s.getFullYear()) + "-" +
(s.getMonth() + 1) + "-" +
(s.getDate()) + " " +
(s.getHours()) + ":" +
(s.getMinutes());
// + ":" + (s.getSeconds());
return date;
}
数据多js平均时间取固定条数展示,echarts数据多处理数据的更多相关文章
- orcale 使用创建日期排序然后分页每次取排序后的固定条数
需求: 一个使用mybatis分页插件的分页列表, 现在要求新增一条数据或者修改一条数据后,显示在最前端 思路: 使用sql , 先将查询出来的数据排序, 然后使用rownum > page*s ...
- oracle取随机数,取固定行数的数
首先建一张测试表: create table DIM_IA_TEST5 ( NAME ), OTHERNAME ), NUM NUMBER, TIMES NUMBER ) 然后插入数据,现在的表数据为 ...
- listview显示固定条数
看了很多网上其他大神的,感觉还是在listview的adapter中的getCount中下手比较好点 毕竟计算高度等等,那会让辅助的布局会一团糟,例如下面的搜索历史只显示四条,布局中有横向listvi ...
- for循环每次展示固定条数的数据的写法。
第一种是一组json数据实现分页的效果,也就是每一次展示5条数据.第二种场景是每一秒展示4条数据,直到全部显示完.两种思路都做个笔记记录下. var nums = 5; //每页出现的数量 var p ...
- Dynamics CRM 修改数据导出到EXCEL的最大条数
系统默认的最大导出数为一万,这个数可以通过执行以下SQL看到,那要增加导出的最大数量改变MaxRecordsForExportToExcel的值即可. <span style="fon ...
- Oracle数据重复,只取一条
--方法一 select * from tb_supply where rowid=any(select max(rowid) from tb_supply group by phone_id) -- ...
- java 实现每次从list中取5000条数据放入新list
从list中取固定条数的数据放入新的list里 public static <T> List<List<T>> split(List<T> resLis ...
- tableZen maxHeight 解决方案 如果数据条数小于N,不进行高度设置,超过N条,直接设置高度,解决原生iview Table 对于右侧固定列,不能计算出正确数值的解决方案
tableZen maxHeight 解决方案 如果数据条数小于N,不进行高度设置,超过N条,直接设置高度,解决原生iview Table 对于右侧固定列,不能计算出正确数值的解决方案 if (thi ...
- 按批次处理list数据 (list按条数取)
按批次处理list数据的两种方法 主要应用于list存储数据过多,不能使list整体进行其余操作 Java | 复制 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...
随机推荐
- Centos7环境下搭建Nginx+Lua+Redis进行数据存取
1.安装依赖环境 yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel 2.安装LuaJIT cd /usr/loca ...
- 关于编码的发展演变:ASCII、GB2312、GBK、gb18030、Unicode、UTF-8
[1]ASCII 每个字符占据1bytes(字节),第一次以规范标准发表是在1967年,最后一次修订是在1986年.用二进制表示的话最高位必须为0(扩展的ASCII不在考虑范围内),因此ASCII只能 ...
- Python基础:09函数式编程
Python支持一些函数式编程的特性.比如lambda. map().reduce().filter()函数. 一:匿名函数与lambda Python可以用lambda 关键字创造匿名函数.匿名函数 ...
- 8.5打包libgdx为一个桌面程序(jar包)
简陋的地图编辑终于做好了,于是要开始制作地图了,想导出为一个windows下可用的程序,让熟人代做地图,然后找人问了下打包流程,其实跟普通java打包为jar没什么区别,记录如下: 导出类型选第三个 ...
- 初识block
我们可以把Block当做Objective-C的匿名函数.Block允许开发者在两个对象之间将任意的语句当做数据进行传递,往往这要比引用定义在别处的函数直观.另外,block的实现具有封闭性(clos ...
- oracle用UNION替换OR (适用于索引列)
通常情况下, 用UNION替换WHERE子句中的OR将会起到较好的效果. 对索引列使用OR将造成全表扫描. 注意, 以上规则只针对多个索引列有效. 如果有column没有被索引, 查询效率可能会因为你 ...
- Oracle的dual是什么东西啊
原文:https://zhidao.baidu.com/question/170487574.html?fr=iks&word=dual&ie=gbk Oracle的dual是什么东西 ...
- zoj 1633 Big String
Big String Time Limit: 2 Seconds Memory Limit: 65536 KB We will construct an infinitely long string ...
- NLP进阶之(七)膨胀卷积神经网络
NLP进阶之(七)膨胀卷积神经网络1. Dilated Convolutions 膨胀卷积神经网络1.2 动态理解1.2.2 转置卷积动画1.2.3 理解2. Dilated Convolutions ...
- 以P2P网贷为例互联网金融产品如何利用大数据做风控?
以P2P网贷为例互联网金融产品如何利用大数据做风控? 销售环节 了解客户申请意愿和申请信息的真实性:适用于信贷员模式. 风控关键点 亲见申请人,亲见申请人证件,亲见申请人签字,亲见申请人单位. 审 ...