jQuery插件Echarts实现的双轴图效果示例【附demo源码下载】

所属分类: 网络编程 / JavaScript 阅读数: 972
收藏 0 赞 0 分享

本文实例讲述了jQuery插件Echarts实现的双轴图效果。分享给大家供大家参考,具体如下:

1、问题描述:

利用Echarts制作一个折线图,条件是:三条折线,一条代表可利用率,另外两条代表数量。

2、实现源码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>echarts-双轴图</title>
    <script type="text/javascript" src="jquery-1.4.2.min.js" ></script>
    <script type="text/javascript" src="echarts.js" ></script>
    <style>
      body,html{
        width: 99%;
        height: 99%;
        font-family: "微软雅黑";
        font-size: 12px;
      }
      #double{
        width: 100%;
        height: 100%;
        font-family: "agency fb";
        font-weight: bolder;
      }
    </style>
    <script>
      $(function(){
        var chart = document.getElementById('double');
        var echart = echarts.init(chart);
        var option = {
          title : {
            text: '可利用率',
            subtext: '',
            x: 'center',
            align: 'right'
          },
          grid: {
            bottom: 80
          },
          tooltip : {
            trigger: 'axis',
            axisPointer: {
              animation: false
            },
            formatter: function (params) {
              var res = params[0].name;
              for (var i = 0, l = params.length; i < l; i++)
              {
                if(i==0)
                {
                  res += '<br/>' + params[i].seriesName + ' : ' + params[i].value + "%";
                }
                else
                {
                  res += '<br/>' + params[i].seriesName + ' : ' + params[i].value;
                }
              }
              return res;
            }
          },
          legend: {
            data:['可利用率','A','B'],
            x: 'left'
          },
          xAxis : [
            {
              type : 'category',
              axisLabel: {
                rotate: 45
              },
              boundaryGap : false,
              axisLine: {onZero: false},
              data : ['2016年1月', '2016年2月', '2016年3月', '2016年4月', '2016年5月','2016年6月','2016年7月','2016年8月','2016年9月','2016年10月','2016年11月','2016年12月'].map(function (str) {
                return str.replace(' ', '\n')
              })
            }
          ],
          yAxis: [
            {
              name: '可利用率',
              type: 'value',
              max: 100,
              axisLabel: {
               show: true,
               interval: 'auto',
               formatter: '{value} %'
              }
            },
            {
              name: 'A',
              nameLocation: 'start',
              type: 'value',
              inverse: true
            },
            {
              name: 'B',
              nameLocation: 'start',
              type: 'value',
              inverse: true
            }
          ],
          series: [
            {
              name:'可利用率',
              type:'line',
              hoverAnimation: false,
              itemStyle: {
                normal: {
                  label : {
                    show:false,
                    position:'top',
                    formatter:'{c} %'
                  }
                }
              },
              areaStyle: {
                normal: {}
              },
              lineStyle: {
                normal: {
                  width: 1
                }
              },
              data:[12,78,34,67,88,45,65,77,31,21,90,54]
            },
            {
              name:'A',
              type:'line',
              yAxisIndex:1,
              hoverAnimation: false,
              areaStyle: {
                normal: {}
              },
              lineStyle: {
                normal: {
                  width: 1
                }
              },
              data: [1,4,5,8,3,2,7,6,9,2,4,3]
            },
            {
              name:'B',
              type:'line',
              yAxisIndex:1,
              hoverAnimation: false,
              areaStyle: {
                normal: {}
              },
              lineStyle: {
                normal: {
                  width: 1
                }
              },
              data: [0,2,3,7,1,0,5,2,6,1,2,1]
            }
          ]
        };
        echart.setOption(option);
      });
    </script>
  </head>
  <body>
    <div id="double"></div>
  </body>
</html>

3、实现效果图:

附:完整实例代码点击此处本站下载

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery常用插件及用法总结》、《jquery中Ajax用法总结》、《jQuery表格(table)操作技巧汇总》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》及《jquery选择器用法总结

希望本文所述对大家jQuery程序设计有所帮助。

更多精彩内容其他人还在看

验证javascript中Object和Function的关系的三段简单代码

今天重温经典书籍。这一次看的是博客园李战老师写的<<悟透JavaScript>>,也是被楼猪翻看最多的技术书籍之一。
收藏 0 赞 0 分享

用apply让javascript函数仅执行一次的代码

有时候我们只想要让某些脚步函数执行一次就算完成任务了。如何实现这种功能呢?简单模仿下面这段就可以轻松搞定了
收藏 0 赞 0 分享

两种简单实现菜单高亮显示的JS类代码

近期在写一个博客管理后台的前端,涉及在同一页面两种高亮显示当前菜单的需求.
收藏 0 赞 0 分享

js getElementsByTagName的简写方式

用最少的代码,做最多的事情. getElementsByTagName的简写方法.
收藏 0 赞 0 分享

JavaScript的单例模式 (singleton in Javascript)

JavaScript的单例模式 (singleton in Javascript)
收藏 0 赞 0 分享

JavaScript接口实现代码 (Interfaces In JavaScript)

接口是面向对象编程里的重要特性,遗憾的是JavaScript并没有提供对接口的支持!怎么实现接口呢?
收藏 0 赞 0 分享

js鼠标左右键 键盘值小结

js鼠标左右键,键盘值实现代码,主要方便检测鼠标的按键返回。
收藏 0 赞 0 分享

Js setInterval与setTimeout(定时执行与循环执行)的代码(可以传入参数)

最近在做项目时用到了定时执行的js方法,setInterval与setTimeout时间长了不用有些生疏了,所以自己总结了一下,记下来,以便以后使用。
收藏 0 赞 0 分享

cnblogs TagCloud基于jquery的实现代码

自创"山寨版"的"博客园"TagCloud!...
收藏 0 赞 0 分享

JavaScript 开发规范要求(图文并茂)

作为一名开发人员(WEB前端JavaScript开发),不规范的开发不仅使日后代码维护变的困难,同时也不利于团队的合作,通常还会带来代码安全以及执行效率上的问题。
收藏 0 赞 0 分享
查看更多