JQuery Highcharts 画图插件局部放大的实现

文章标签: jquery-highcharts
2014-12-9 9:30:07     12 人阅读    

JQuery Highcharts 画图插件局部放大的实现

Highcharts 官网:http://www.highcharts.com
Highcharts 官网示例:http://www.highcharts.com/demo/
Highcharts 官网文档:http://www.highcharts.com/documentation/how-to-use
Highcharts 官网参考手册:http://www.highcharts.com/ref/#credits--enabled
 
在工作中利用Highcharts 画图时,可能会出现X轴太多,Y轴数值相差太大的情况,这个时候Highcharts 的局部放大的功能就该利用到了:
先看下效果图:
 

 
 图中在原图上选中了一片区域,然后松开鼠标,图变成下图:
 
 
 上图的右上角出现了按钮Reset Zoom 点击还原图列原始大小。
 
 具体实现起来还是比较简单的:

var chart;
$(document).ready(function() {
    chart = new Highcharts.Chart({
        chart: {
            renderTo: 'container',
            zoomType: 'xy'  //******  这句是实现局部放大的关键处  ******
        },
        title: {
            text: 'Highcharts局部放大功能实例'
        },
        subtitle: {
            text: 'Source:cnblogs.com'
        },
        xAxis: [{
            categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
                'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
        }],
        yAxis: [{ // Y轴
            labels: {
                formatter: function() {
                    return this.value +'°C';
                },
                style: {
                    color: '#89A54E'
                }
            },
            title: {
                text: 'Temperature',
                style: {
                    color: '#89A54E'
                }
            },
            opposite: true

        }, { // Secondary yAxis
            gridLineWidth: 0,
            title: {
                text: 'Rainfall',
                style: {
                    color: '#4572A7'
                }
            },
            labels: {
                formatter: function() {
                    return this.value +' mm';
                },
                style: {
                    color: '#4572A7'
                }
            }

        }, { // Tertiary yAxis
            gridLineWidth: 0,
            title: {
                text: 'Sea-Level Pressure',
                style: {
                    color: '#AA4643'
                }
            },
            labels: {
                formatter: function() {
                    return this.value +' mb';
                },
                style: {
                    color: '#AA4643'
                }
            },
            opposite: true
        }],
        tooltip: {
            formatter: function() {
                var unit = {
                    'Rainfall': 'mm',
                    'Temperature': '°C',
                    'Sea-Level Pressure': 'mb'
                }[this.series.name];

                return ''+
                    this.x +': '+ this.y +' '+ unit;
            }
        },
        legend: {
            layout: 'vertical',
            align: 'left',
            x: 120,
            verticalAlign: 'top',
            y: 80,
            floating: true,
            backgroundColor: '#FFFFFF'
        },
        series: [{  //图例数据
            name: 'Rainfall',
            color: '#4572A7',
            type: 'column',
            yAxis: 1,
            data: [49.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]

        }, {
            name: 'Sea-Level Pressure',
            type: 'spline',
            color: '#AA4643',
            yAxis: 2,
            data: [1016, 1016, 1015.9, 1015.5, 1012.3, 1009.5, 1009.6, 1010.2, 1013.1, 1016.9, 1018.2, 1016.7],
            marker: {
                enabled: false
            },
            dashStyle: 'shortdot'

        }, {
            name: 'Temperature',
            color: '#89A54E',
            type: 'spline',
            data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]
        }]
    });
});

 
 


此文章是博主在实际开发过程中的代码处理


原文地址:http://www.itmmd.com/201412/284.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。

Highcharts中修改图表列显示的颜色   上一篇
下一篇  .net4.0及VS2010安装失败解决办法

精彩回复
发表评论
姓名:       

《程序员app》专门为程序员量身定做!