eachars报表折线图通用方法

生活中,最使人疲惫的往往不是道路的遥远,而是心中的郁闷;最使人痛苦的往往不是生活的不幸,而是希望的破灭;最使人颓废的往往不是前途的坎坷,而是自信的丧失;最使人绝望的往往不是挫折的打击,而是心灵的死亡。所以我们要有自己的梦想,让梦想的星光指引着我们走出落漠,走出惆怅,带着我们走进自己的理想。

导读:本篇文章讲解 eachars报表折线图通用方法,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

  报表通用格式(eachar,highchars)通用

第一步,先将需要展示的数据封装成下面方式

数据格式为:
[
    { 
      "xAxis":"所有科室",
      "yAxis":[
           {"name":"报修量","value":"100"},
           {"name":"完修量","value":"50"},
           {"name":"维修总费用","value":"15"},
           {"name":"紧急单数","value":"2"},
           {"name":"维修总工时","value":"56"}
         ]
    },{ 
      "xAxis":"急诊科",
      "yAxis":[
           {"name":"报修量","value":"130"},
           {"name":"完修量","value":"20"},
           {"name":"维修总费用","value":"10"},
           {"name":"紧急单数","value":"2"},
           {"name":"维修总工时","value":"53"}
         ]
    }
]

第二步,在将上面的数据封装成插件需要的格式

//得到折线图
function getComunLine(){
    var dataJSON = getLineObj(); //得到上面的数据JSON,

    var xAxis = [];  //报表的x轴  xAxis
    var yAxis = [];   //报表的y轴  series

	//封装X轴值
	for(var i=0;i<dataJSON.length;i++){
		xAxis.push(dataJSON[i].xAxis); //对应X轴值
	}

	//封装Y轴值
    var index = 0;
    for(var i = 0;i < dataJSON[0].yAxis.length; i++){   //每一次的第一列的数量和名称都是固定的
        var scz = {};
		scz.name = dataJSON[0].yAxis[index].name;
        scz.type = 'line';
        scz.stack = '总量';

        //封装Y轴值
        var da = [];
        for(var j = 0; j < xAxis.length; j++){  //2
            if(dataJSON[j].yAxis[index]){
                da.push(Number(dataJSON[j].yAxis[index].value));  //值
            }else{
                da.push(0);   //没有值的补充为 0
            }
        }

        scz.data = da;
        yAxis.push(scz); //对应y轴值

        index++;//当前索引加 1
    }

    //调用折线图方法  第一个参数,div显示的容器,第二个是title,第三个是X轴,第四个是Y轴
    eachatsReport('container',"维修报表统计",xAxis,yAxis); 
}

第三步,调用插件方法即可

function eachatsReport(container,title,xAxis,yAxis){
    //添加折现图
    Highcharts.chart(container, {
        chart: {
            type: 'line'
        },
        title: {
            text:title
        },
        xAxis: {
            //categories: ['admin','赖*蕾', '周*明', '倪*强', '高*巍','朱明']
            categories: xAxis
        },
        yAxis: {
            title: {
                text: 'value',
                style: {
                    color: '#006400',
                    fontSize : '14px'
                }
            }
        },
        credits:{enabled:false},
        plotOptions: {
            line: {
                dataLabels: {
                    enabled: true,          // 开启数据标签
                    formatter: function() {
                        return this.y + '' ;
                    }
                },
                enableMouseTracking: true // 关闭鼠标跟踪,对应的提示框、点击事件会失效
            }
        },
        // series:[{
        //     name: 'admin',
        //     data: [43934, 52503, 57177, 69658, 97031,48]
        // }, {
        //     name: '赖*蕾',
        //     data: [24916, 24064, 29742, 29851, 32490,95]
        // }, {
        //     name: '周*明',
        //     data: [11744, 17722, 16005, 19771, 20185,62]
        // }, {
        //     name: '倪*强',
        //     data: [78,0, 7988, 12169, 15112,4825]
        // }, {
        //     name: '高*巍',
        //     data: [12908, 5948, 8105, 11248, 8989,682]
        // },{
        //     name: '朱明',
        //     data: [12908, 5948, 8105, 11248, 8989,682
        // }]
        series:yAxis
    });
}

 效果:由于是数据关系,所以这里效果图就不实际展示了,

eachars报表折线图通用方法

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/137534.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!