按highcharts中column形式转对象展现格式
highcharts图表type:column事例的格式是这样的:
(不论接口返回什么格式,需要转换成下面这样的):
xAxis: {
categories: ['一月','二月'],
},
series: [
{name: '东京',data: [49, 71]},
{name: '纽约',data: [39, 71]},
{name: '伦敦',data: [65, 59]},
{name: '柏林',data: [60, 47]}
]
我们最终要得到 xAxis和series
column:[
{notValidCount: 1, time: "2020-03-30", validCount: 0},
{notValidCount: 4, time: "2020-03-31", validCount: 0},
{notValidCount: 7, time: "2020-04-01", validCount: 0},
{notValidCount: 6, time: "2020-04-02", validCount: 0},
{notValidCount: 0, time: "2020-04-03", validCount: 0},
{notValidCount: 6, time: "2020-04-04", validCount: 0},
{notValidCount: 5, time: "2020-04-05", validCount: 0},
]
我们要转换成这样的格式,以上面的列转成自己的行,xAxis是time:
{
notValidCount: [1, 4, 7, 6, 0, 6, 5],
time:["2020-03-30", "2020-03-31", "2020-04-01", "2020-04-02", "2020-04-03","2020-04-04","2020-04-05"],
validCount:[0, 0, 0, 0, 0, 0, 0]
}
------------------------------------------------------------------
代码实现:
var column =[
{notValidCount: 1, time: "2020-03-30", validCount: 1},
{notValidCount: 4, time: "2020-03-31", validCount: 1},
{notValidCount: 7, time: "2020-04-01", validCount: 2},
{notValidCount: 6, time: "2020-04-02", validCount: 2},
{notValidCount: 2, time: "2020-04-03", validCount: 2},
{notValidCount: 6, time: "2020-04-04", validCount: 2},
{notValidCount: 5, time: "2020-04-05", validCount: 3},
];
var xAxis = [];
var dataNew = {};
var series = [];
for(var el in column[0]){
dataNew[el] = [];
//el 每个分类字段名
column.forEach(function(item,index){
//循环7次notValidCount里值 ,再time值
dataNew[el].push(item[el])
})
}
xAxis = dataNew.time;
var tableinfo = {
'keliu':[
{key:'notValidCount',name:'无效客流'},
{key:'validCount',name:'有效客流'},
],
}
var originData = tableinfo['keliu'];
var colors = ['#A10D30','#E98353','#F2C65C','#EC808D','#53B3E9'];
originData.forEach(function(item,index){
var type = 'column';
series.push({
type:type,
name:item.name,
color:colors[index],
data:dataNew[item.key]
}) })
console.log(xAxis,series,'希望的值')
下边是xAxis和series的值:

图表:

按highcharts中column形式转对象展现格式的更多相关文章
- (转)解决fasterxml中string字符串转对象json格式错误问题(无引号 单引号问题)
原文地址:解决fasterxml中string字符串转对象json格式错误问题 com.fasterxml.jackson.databind.ObjectMapper mapper = new com ...
- 解决fasterxml中string字符串转对象json格式错误问题
软件152 尹以操 springboot中jackson使用的包是fasterxml的.可以通过如下代码,将一个形如json格式string转为一个java对象: com.fasterxml.jack ...
- YII框架中可以使用foreach遍历对象以及可以使用数组形式直接访问对象的原因
YII框架中可以使用foreach遍历对象以及可以使用数组形式直接访问对象的原因在YII框架的使用过程中,我们可以使用foreach直接遍历findAll等方法返回的对象的属性为什么呢?其实这与CMo ...
- (原创)Java 读取 Highcharts 中的图片
前言:项目中提出一个新需求,就将Highcharts中的图片读取到Excel中.并在前台做下载,当听到这功能,第一想法是需要由后台编写程序,将数据写道图片中. 虽然没做过但是也没觉得太难,毕竟前辈们肯 ...
- 谈谈Delphi中的类和对象1---介绍几个概念 && 对象是一个地地道道的指针
参考:http://blog.163.com/liang_liu99/blog/static/88415216200952123412180/ 以下的介绍主要针对的是Delphi的面向对象的知识,可能 ...
- 初识python中的类与对象
这篇博客的路线是由深入浅,所以尽管图画的花花绿绿的很好看,但是请先关注我的文字,因为初接触类的小伙伴直接看类的实现可能会觉得难度大,只要耐着性子看下去,就会有一种“拨开迷雾看未来”的感觉了. 一.py ...
- buffer cache中,各个object对象占用的buffer blocks
buffer cache中,各个object对象占用的buffer blocks: COLUMN OBJECT_NAME FORMAT A40 COLUMN NUMBER_OF_BLOCKS FORM ...
- Python_day8_面向对象(多态、成员修饰符、类中特殊方法、对象边缘知识)、异常处理之篇
一.面向对象之多态 1.多态:简而言子就是多种形态或多种类型 python中不支持多态也用不到多态,多态的概念是应用与java/C#中指定传参的数据类型, java多态传参:必须是传参数的数据类型或传 ...
- javascript中的内置对象
2015.12.1 javascript中的内置对象 复习: 1.js中的内置函数 alert prompt write parseInt parseFloat eval isNaN document ...
- (转载)JavaScript中的Window窗口对象
(转载)http://www.ijavascript.cn/jiaocheng/javascript-window-65.html 例子: <html> <head> < ...
随机推荐
- Java开发学习(四十六)----MyBatisPlus新增语句之id生成策略控制及其简化配置
在前面有一篇博客:Java开发学习(四十一)----MyBatisPlus标准数据层(增删查改分页)开发,我们在新增的时候留了一个问题,就是新增成功后,主键ID是一个很长串的内容. 我们更想要的是按照 ...
- Docker原理(图解+秒懂+史上最全)
背景:下一个视频版本,从架构师视角,尼恩为大家打造高可用.高并发中间件的原理与实操. 目标:通过视频和博客的方式,为各位潜力架构师,彻底介绍清楚架构师必须掌握的高可用.高并发环境,包括但不限于: 高可 ...
- docker-compose + mysql8.x 主从数据库配置
0.准备 (略过docker的安装与镜像拉取) docker / docker-compose 安装 拉取 mysql 8.x 1. master和slave的mysql配置 master: [mys ...
- [python] 基于matplotlib实现圆环图的绘制
圆环图本质上是一个中间切出一块区域的饼状图.可以使用python和matplotlib库来实现.本文主要介绍基于matplotlib实现圆环图.本文所有代码见:Python-Study-Notes # ...
- rvm安装ruby
macOS11.1 打开终端 使用下面命令查看ruby版本 rvm list known 然后安装 rvm install 2.0.0 查看ruby版本 ruby -v 系统默认使用ruby版本 ...
- 踩坑实录---Angular防抖——点击事件
npx ng g directive DebounceClickDirective --module=app 然后自动生成了2 个文件 CREATE src/app/debounce-click-di ...
- vscode快速删除空白行方法
1.快速打开替换界面,在Find界面输入^\s*(?=\r?$)\n 2.Alt+R选择Use Regular Expression(Alt+R)即正则表达式模式: 3.选择Replace All(C ...
- 如何使用MASA.Blazor
MASA.Blazor 是什么? 基于Material Design设计和BlazorComponent的交互能力提供标准的基础组件库.提供如布局.弹框标准.Loading.全局异常处理等标准场景的预 ...
- Keil 5(C51 与 MDK-ARM)官网下载安装包 [ 图文教程 ]
前言 本篇我将介绍 Keil C51 和 MDK-ARM 两大集成开发环境的安装包下载方法,帮助大家安全快速的从官网下载安装包. 博主编写了软件安装教程,可以在安装包下载完成后,跳转观看图文教程进行软 ...
- 【学习笔记】Tarjan 图论算法
- 前言 本文主要介绍 Tarjan 算法的「强连通分量」「割点」「桥」等算法. 争取写的好懂一些. - 「强连通分量」 - 何为「强连通分量」 在有向图中,如果任意两个点都能通过直接或间接的路径相互 ...