详解ECharts使用心得总结

前言

上周项目组要临时给客户做一个演示的原型,首页设计的是一个中国地图,本来打算用谷歌的地图,但是,做出来之后,整体的效果看起来太差了,最后就在网上搜相关的地图呈现的控件,然后就找到了这个ECharts报表呈现组件,挺不错的一个组件,而且地图数据都是离线的,真心很赞。但是,使用起来却颇费了一番工夫。所以就把使用中的一些心得体会跟大家分享一下。

1.    插件的下载

以下是ECharts的下载链接,需要注意的是ECharts内部也是依赖于另一个插件的叫ZRender,当然对于大部分图表而言不需要ZRender的,但是对于地图控件及其他复杂的呈现控件而已都是需要ZRender的。为了避免不要的问题出现,建议大家在下载ECharts时同时也要下载ZRender。

ECharts下载地址: http://echarts.baidu.com/

ZRender下载地址:http://ecomfe.github.io/zrender/index.html

下载之后解压各自的文件目录结构如下:

ECharts:

ZRender:

2.    插件的引用

首先,新建一个Web应用程序,然后添加刚刚下载的文件,具体的目录结构如下:

这里有以下几点需要说明:

1、所有的跟ECharts有关的文件全部都在echarts文件夹下

2、echarts文件夹的内容分为两部分

1)  一部分是以echarts开头的js文件,这些文件全部来自于1.中的ECharts文件目录中的js文件夹下的文件,也就是1.中的图中红框标注的js下的文件。如下:

2) 另一部分是一个名为zrender的文件夹,这里需要特别注意的是该文件夹的命名必须为zrender,因为在echarts的js文件中对zrender的引用都是以zrender为根目录的,zrender文件夹的内容即为1.中zrender文件目录中的src文件夹下的内容,如下:

3.    在页面中的具体使用

按照上边的步骤配置过之后,我们就可以在页面中引用了,这里我主要是演示地图控件的使用方式,因为地图的引用跟其他的基本图形的引用不太一样。其他的图形的呈现也会做一个简要的演示。

3.1 MapChart

首先在跟2中的echarts文件夹同一个目录(也就是Modules文件夹)下添加一个aspx页或html页,需要注意的是,如果是在aspx页中使用echarts时,需要把要渲染的div放在form标签之外,否则图形是显示不出来的。

3.1.1 在head标签中添加对echarts的引用如下:

<head runat="server">
  <title></title>
  <script src="echarts/esljs" type="text/javascript"></script>
</head> 

3.1.2 在body标记中,form标记之外,添加一个div,用来做图表渲染的容器。如下:

<body> 

<div id="main"style="height:500px;border:1px solid #ccc;padding:10px;"></div> 

…………… 

…………… 

</body>

3.1.3 在3.1.3中添加的div标记下,添加如下的js代码段,如下:

 <script type="text/javascript"> 

    //为模块加载器配置echarts的路径,这里主要是配置map图表的路径,其他的图表跟map的配置还不太一样,下边也会做另一种类型的图表事例。
这里引用的主要是echarts文件夹下的echarts-map文件,而其他类型的图表引用的都是echarts文件夹下的echarts文件。 

    requireconfig({ 

      paths: { 

        echarts:'/echarts/echarts', 

        'echarts/chart/map':'/echarts/echarts-map' 

      } 

    }); 

   //动态加载echarts,在回掉函数中使用,要注意保持按需加载结构定义图表路径 

    require( 

    [ 

      'echarts', 

      'echarts/chart/map' 

    ], 

    function (ec) { 

      varmyChart=ecinit(documentgetElementById('main')); 

      //option主要是图标的一些设置,这不是这篇文章的重点,关于具体的设置可以参考官方的文档说明文档 

option= { 

        title: { 

          text:'iphone销¨²量¢?', 

          subtext:'纯ä?属º?虚¨¦构1', 

          x:'center' 

        }, 

        tooltip: { 

          trigger:'item' 

        }, 

        legend: { 

          orient:'vertical', 

          x:'left', 

          data: ['iphone3','iphone4','iphone5'] 

        }, 

        dataRange: { 

          min:0, 

          max:2500, 

          text: ['高?','低̨ª'],      // 文?本À?,ê?默?认¨?为a数ºy值¦Ì文?本À? 

          calculable:true, 

          textStyle: { 

            color:'orange' 

          } 

        }, 

        toolbox: { 

          show:true, 

          orient:'vertical', 

          x:'right', 

          y:'center', 

          feature: { 

            mark:true, 

            dataView: { readOnly:false }, 

            restore:true, 

            saveAsImage:true 

          } 

        }, 

        series: [ 

    { 

      name:'iphone3', 

      type:'map', 

      mapType:'china', 

      selectedMode: 'single', 

      itemStyle: { 

        normal: { label: { show:true },color:'#ffd700' },// for legend 

        emphasis: { label: { show:true} } 

      }, 

      data: [ 

        { name:'北À¡À京?',value:Mathround(Mathrandom() *1000) }, 

        { name:'天¬¨¬津¨°',value:Mathround(Mathrandom() *1000) }, 

        { name:'上¦?海¡ê',value:Mathround(Mathrandom() *1000) }, 

        { name:'重?庆¨¬',value:Mathround(Mathrandom() *1000) }, 

        { name:'河¨®北À¡À',value:Mathround(Mathrandom() *1000) }, 

        { name:'河¨®南?',value:Mathround(Mathrandom() *1000) }, 

        { name:'云?南?',value:Mathround(Mathrandom() *1000) }, 

        { name:'辽¢¨¦宁t',value:Mathround(Mathrandom() *1000) }, 

        { name:'黑¨²龙¢¨²江-',value:Mathround(Mathrandom() *1000) }, 

        { name:'湖t南?',value:Mathround(Mathrandom() *1000) }, 

        { name:'安ã2徽?',value:Mathround(Mathrandom() *1000) }, 

        { name:'山¦?东?',value:Mathround(Mathrandom() *1000) }, 

        { name:'新?疆?',value:Mathround(Mathrandom() *1000) }, 

        { name:'江-苏?',value:Mathround(Mathrandom() *1000) }, 

        { name:'浙?江-',value:Mathround(Mathrandom() *1000) }, 

        { name:'江-西¡Â',value:Mathround(Mathrandom() *1000) }, 

        { name:'湖t北À¡À',value:Mathround(Mathrandom() *1000) }, 

        { name:'广?西¡Â',value:Mathround(Mathrandom() *1000) }, 

        { name:'甘¨º肃¨¤',value:Mathround(Mathrandom() *1000) }, 

        { name:'山¦?西¡Â',value:Mathround(Mathrandom() *1000) }, 

        { name:'内¨²蒙¨¦古?',value:Mathround(Mathrandom() *1000) }, 

        { name:'陕¦?西¡Â',value:Mathround(Mathrandom() *1000) }, 

        { name:'吉a林¢?',value:Mathround(Mathrandom() *1000) }, 

        { name:'福¡ê建¡§',value:Mathround(Mathrandom() *1000) }, 

        { name:'贵¨®州Y',value:Mathround(Mathrandom() *1000) }, 

        { name:'广?东?',value:Mathround(Mathrandom() *1000) }, 

        { name:'青¨¤海¡ê',value:Mathround(Mathrandom() *1000) }, 

        { name:'西¡Â藏?',value:Mathround(Mathrandom() *1000) }, 

        { name:'四?川䡧',value:Mathround(Mathrandom() *1000) }, 

        { name:'宁t夏?',value:Mathround(Mathrandom() *1000) }, 

        { name:'海¡ê南?',value:Mathround(Mathrandom() *1000) }, 

        { name:'台¬¡§湾ª?',value:Mathround(Mathrandom() *1000) }, 

        { name:'香?港?',value:Mathround(Mathrandom() *1000) }, 

        { name:'澳ã?门?',value:Mathround(Mathrandom() *1000) } 

      ] 

    }, 

    { 

      name:'iphone4', 

      type:'map', 

      mapType:'china', 

      selectedMode: 'single', 

      itemStyle: { 

        normal: { label: { show:true },color:'#ff8c00' },// for legend 

        emphasis: { label: { show:true} } 

      }, 

      data: [ 

        { name:'北À¡À京?',value:Mathround(Mathrandom() *1000) }, 

        { name:'天¬¨¬津¨°',value:Mathround(Mathrandom() *1000) }, 

        { name:'上¦?海¡ê',value:Mathround(Mathrandom() *1000) }, 

        { name:'重?庆¨¬',value:Mathround(Mathrandom() *1000) }, 

        { name:'河¨®北À¡À',value:Mathround(Mathrandom() *1000) }, 

        { name:'安ã2徽?',value:Mathround(Mathrandom() *1000) }, 

        { name:'新?疆?',value:Mathround(Mathrandom() *1000) }, 

        { name:'浙?江-',value:Mathround(Mathrandom() *1000) }, 

        { name:'江-西¡Â',value:Mathround(Mathrandom() *1000) }, 

        { name:'山¦?西¡Â',value:Mathround(Mathrandom() *1000) }, 

        { name:'内¨²蒙¨¦古?',value:Mathround(Mathrandom() *1000) }, 

        { name:'吉a林¢?',value:Mathround(Mathrandom() *1000) }, 

        { name:'福¡ê建¡§',value:Mathround(Mathrandom() *1000) }, 

        { name:'广?东?',value:Mathround(Mathrandom() *1000) }, 

        { name:'西¡Â藏?',value:Mathround(Mathrandom() *1000) }, 

        { name:'四?川䡧',value:Mathround(Mathrandom() *1000) }, 

        { name:'宁t夏?',value:Mathround(Mathrandom() *1000) }, 

        { name:'香?港?',value:Mathround(Mathrandom() *1000) }, 

        { name:'澳ã?门?',value:Mathround(Mathrandom() *1000) } 

      ] 

    }, 

    { 

      name:'iphone5', 

      type:'map', 

      mapType:'china', 

      selectedMode: 'single', 

      itemStyle: { 

        normal: { label: { show:true },color:'#da70d6' },// for legend 

        emphasis: { label: { show:true} } 

      }, 

      data: [ 

        { name:'北À¡À京?',value:Mathround(Mathrandom() *1000) }, 

        { name:'天¬¨¬津¨°',value:Mathround(Mathrandom() *1000) }, 

        { name:'上¦?海¡ê',value:Mathround(Mathrandom() *1000) }, 

        { name:'广?东?',value:Mathround(Mathrandom() *1000) }, 

        { name:'台¬¡§湾ª?',value:Mathround(Mathrandom() *1000) }, 

        { name:'香?港?',value:Mathround(Mathrandom() *1000) }, 

        { name:'澳ã?门?',value:Mathround(Mathrandom() *1000) } 

      ] 

    }
  ]
      };
       //以下的这段代码主要是用来处理用户的选择,应用场景是可以做地图的交互,比如点击地图上的某一个省,获取相应的省的指标变化等。
       //需要特别注意的是,如果需要点击某一省作地图的操作交互的话,还需要为series属性的每一项添加一个selectedMode属性,这里的属性值为 'single'即单选,也可多选
  varecConfig= require('echarts/config');
      myCharton(ecConfigEVENTMAP_SELECTED,function (param) {
        varselected=paramselected;
        varmapSeries=optionseries[0];
        vardata= [];
        varlegendData= [];
        varname;
        for (varp=0,len=mapSeriesdatalength; p<len; p++) {
          name=mapSeriesdata[p]name;
          mapSeriesdata[p]selected=selected[name];
          if (selected[name]) {
            alert(name); //这里只是简单的做一个事例说明,弹出用户所选的省,如需做其他的扩展,可以在这里边添加相应的操作  

          }
        }
      });
      myChartsetOption(option);
    }
  );
  </script>

3.1.4  完成以上操作之后,效果如下图所示:

3.2 LineChart

除了地图图表之外的其他的图标的使用方式都差不多。事实上其他的图表跟地图图表的区别在于对配置文件的引用。这里只做一个折线图的示例,其它的示例都是一样的。

3.2.1 跟3.1.1一样,引入echarts脚本

3.2.2 跟3.2.2一样,添加渲染图表的div容器

3.2.3 在3.2.2添加的div下添加如下js代码块

<scripttype="text/javascript"> 

    requireconfig({ 

      paths: { 

        echarts:'/echarts/echarts', 

        'echarts/chart/bar':'/echarts/echarts',//这里需要注意的是除了mapchart使用的配置文件为echarts-map之外,
其他的图形引用的配置文件都为echarts,这也是一般的图形跟地图的区别 

        'echarts/chart/line':'/echarts/echarts' 

      } 

    }); 

    require( 

    [ 

      'echarts', 

      'echarts/chart/bar', 

      'echarts/chart/line' 

    ], 

    function (ec) { 

      varmyChart=ecinit(documentgetElementById('main')); 

      option= { 

        tooltip: { 

          trigger:'axis' 

        }, 

        legend: { 

          data: ['邮®¨º件t营®a销¨²','联¢a盟?广?告?','视º¨®频¦Ì广?告?','直¡À接¨®访¤?问¨º','搜?索¡Â引°y擎?'] 

        }, 

        toolbox: { 

          show:true, 

          feature: { 

            mark:true, 

            dataView: { readOnly:false }, 

            magicType: ['line','bar'], 

            restore:true, 

            saveAsImage:true 

          } 

        }, 

        calculable:true, 

        xAxis: [ 

    { 

      type:'category', 

      boundaryGap:false, 

      data: ['周¨¹一°?','周¨¹二t','周¨¹三¨y','周¨¹四?','周¨¹五?','周¨¹六¢¨´','周¨¹日¨?'] 

    } 

  ], 

        yAxis: [ 

    { 

      type:'value', 

      splitArea: { show:true } 

    } 

  ], 

        series: [ 

    { 

      name:'邮®¨º件t营®a销¨²', 

      type:'line', 

      stack:'总Á¨¹量¢?', 

      data: [120,132,101,134,90,230,210] 

    }, 

    { 

      name:'联¢a盟?广?告?', 

      type:'line', 

      stack:'总Á¨¹量¢?', 

      data: [220,182,191,234,290,330,310] 

    }, 

    { 

      name:'视º¨®频¦Ì广?告?', 

      type:'line', 

      stack:'总Á¨¹量¢?', 

      data: [150,232,201,154,190,330,410] 

    }, 

    { 

      name:'直¡À接¨®访¤?问¨º', 

      type:'line', 

      stack:'总Á¨¹量¢?', 

      data: [320,332,301,334,390,330,320] 

    }, 

    { 

      name:'搜?索¡Â引°y擎?', 

      type:'line', 

      stack:'总Á¨¹量¢?', 

      data: [820,932,901,934,1290,1330,1320] 

    } 

  ] 

      };           

      myChartsetOption(option); 

    } 

  ); 

  </script> 

  <divid="main1"style="height:500px;border:1px solid #ccc;padding:10px;"></div>   

  <scripttype="text/javascript"> 

    requireconfig({ 

      paths: { 

        echarts:'/echarts/echarts', 

        'echarts/chart/bar':'/echarts/echarts', 

        'echarts/chart/line':'/echarts/echarts' 

      } 

    }); 

    require( 

    [ 

      'echarts', 

      'echarts/chart/bar', 

      'echarts/chart/line' 

    ], 

    function (ec) { 

      varmyChart=ecinit(documentgetElementById('main1')); 

      option= { 

        title: { 

          text:'未¡ä来¤¡ä一°?周¨¹气?温?变À?化¡¥', 

          subtext:'纯ä?属º?虚¨¦构1' 

        }, 

        tooltip: { 

          trigger:'axis' 

        }, 

        legend: { 

          data: ['最Á?高?气?温?','最Á?低̨ª气?温?'] 

        }, 

        toolbox: { 

          show:true, 

          feature: { 

            mark:true, 

            dataView: { readOnly:false }, 

            magicType: ['line','bar'], 

            restore:true, 

            saveAsImage:true 

          } 

        }, 

        calculable:true, 

        xAxis: [ 

    { 

      type:'category', 

      boundaryGap:false, 

      data: ['周¨¹一°?','周¨¹二t','周¨¹三¨y','周¨¹四?','周¨¹五?','周¨¹六¢¨´','周¨¹日¨?'] 

    } 

  ], 

        yAxis: [ 

    { 

      type:'value', 

      axisLabel: { 

        formatter:'{value} °?C' 

      }, 

      splitArea: { show:true } 

    } 

  ], 

        series: [ 

    { 

      name:'最Á?高?气?温?', 

      type:'line', 

      itemStyle: { 

        normal: { 

          lineStyle: { 

            shadowColor:'rgba(0,0,0,4)' 

          } 

        } 

      }, 

      data: [11,11,15,13,12,13,10] 

    }, 

    { 

      name:'最Á?低̨ª气?温?', 

      type:'line', 

      itemStyle: { 

        normal: { 

          lineStyle: { 

            shadowColor:'rgba(0,0,0,4)' 

          } 

        } 

      }, 

      data: [-2,1,2,5,3,2,0] 

    } 

  ] 

      };           

      myChartsetOption(option); 

    } 

  ); 

  </script> 

  <divid="main2"style="height:500px;border:1px solid #ccc;padding:10px;"></div>   

  <scripttype="text/javascript"> 

    requireconfig({ 

      paths: { 

        echarts:'/echarts/echarts', 

        'echarts/chart/bar':'/echarts/echarts', 

        'echarts/chart/line':'/echarts/echarts' 

      } 

    }); 

    require( 

    [ 

      'echarts', 

      'echarts/chart/bar', 

      'echarts/chart/line' 

    ], 

    function (ec) { 

      varmyChart=ecinit(documentgetElementById('main2')); 

      option= { 

        title: { 

          text:'某3楼£¤盘¨¬销¨²售º?情¨¦况?', 

          subtext:'纯ä?属º?虚¨¦构1' 

        }, 

        tooltip: { 

          trigger:'axis' 

        }, 

        legend: { 

          data: ['意°a向¨°','预¡è购o','成¨¦交?'] 

        }, 

        toolbox: { 

          show:true, 

          feature: { 

            mark:true, 

            dataView: { readOnly:false }, 

            magicType: ['line','bar'], 

            restore:true, 

            saveAsImage:true 

          } 

        }, 

        calculable:true, 

        xAxis: [ 

    { 

      type:'category', 

      boundaryGap:false, 

      data: ['周¨¹一°?','周¨¹二t','周¨¹三¨y','周¨¹四?','周¨¹五?','周¨¹六¢¨´','周¨¹日¨?'] 

    } 

  ], 

        yAxis: [ 

    { 

      type:'value' 

    } 

  ], 

        series: [ 

    { 

      name:'成¨¦交?', 

      type:'line', 

      smooth:true, 

      itemStyle: { normal: { areaStyle: { type:'default'}} }, 

      data: [10,12,21,54,260,830,710] 

    }, 

    { 

      name:'预¡è购o', 

      type:'line', 

      smooth:true, 

      itemStyle: { normal: { areaStyle: { type:'default'}} }, 

      data: [30,182,434,791,390,30,10] 

    }, 

    { 

      name:'意°a向¨°', 

      type:'line', 

      smooth:true, 

      itemStyle: { normal: { areaStyle: { type:'default'}} }, 

      data: [1320,1132,601,234,120,90,20] 

    } 

  ] 

      };           

      myChartsetOption(option); 

    } 

  ); 

  </script>

3.2.4 完成以上操作之后效果图如下:

好了,今天就总结到这里了,希望能给大家带来一些帮助。这里主要是介绍地图控件的使用,因为其官方文档上关于路径的配置写的很不清楚,所以才会想把这些走的弯路给总结一下。对于其他的图表控件的使用都很简单,大家可以参考官方的文档。http://echarts.baidu.com/doc/doc.html

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Echarts基本用法_动力节点Java学院整理

    echarts太完美了: 1,开源软件,无私的为我们提供漂亮的图形界面: 2,使用简单,默默的为我们封装了重要的js,只要会引用就会使用echarts: 3,种类多,echarts为我们提供了各种图标,其中最具象征的就是地图了: 4,兼容性好,基于html5动画渲染超棒. echarts官网 提供了源码和说明文档,使用echarts需要先到官网下载需要的js源文件. 官网上的demo中夹杂着很多我们用不到的东西,想使用饼状图就得从demo中把不用的去掉,劈植斩叶留下最原始的功能实现.这样毕竟比较

  • jQuery插件Echarts实现的渐变色柱状图

    效果图: 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>ECharts柱状图</title> </head> <body> <!-- 为ECharts准备一个具备大小(宽高)的Dom --> <div id="container" style="width:

  • echarts图表导出excel示例

    根据传入的参数生成相应的图形 复制代码 代码如下: loadChart : function(data,item){  var that = this;  require(['echarts', 'echarts/chart/bar', 'echarts/chart/line',    'echarts/chart/pie'], function(ec) {   that.body.setHeight(800);   var myChart = ec.init(that.body.dom);  

  • 基于Echarts 3.19 制作常用的图形(非静态)

    饼图: 环境:Echarts 3.19 vs2013 实现方式:ajax+ashx+json 注意事项: 官网所需格式为 [{value:23,name:'xxxx' }] 请将key 的名字不要写错 具体代码,各位看官 请下移目光. <!--请先引用文件--> <script src="../Scripts/jquery-1.8.2.min.js"></script> <script src="../Scripts/echarts/

  • 如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据(附源码下载)

    ECharts地图主要用于地理区域数据的可视化,展示不同区域的数据分布信息.ECharts官网提供了中国地图.世界地图等地图数据下载,通过js引入或异步加载json文件的形式调用地图. 效果演示      源码下载 本文将结合实例讲解如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据,我们以中国地图为例,展示去年(2015年)我国各省份GDP数据.通过异步请求php,读取mysql中的数据,然后展示在地图上,因此本文除了你掌握前端知识外,还需要你了解PHP以及MySQL方

  • echarts3 使用总结(绘制各种图表,地图)

    由于项目需要自学了echarts,下面将学到的东西总结如下,如果有哪里写的不好,请批评指正 一.前期准备 1.使用echarts之前先要引入echarts.js,js可以到官网下载 2.写一个div容器用来装echarts内容,这个容器必须有高度,不然看不到内容. 3.在script中获取div容器的id,根据需要写option中的参数(也许你现在还不知道option是干嘛用的,不要着急往下看),使用setoption生成图表. (代码如下)注:后面将不再对引入js,获取id,调用option生

  • jQuery插件echarts实现的多柱子柱状图效果示例【附demo源码下载】

    本文实例讲述了jQuery插件echarts实现的多柱子柱状图效果.分享给大家供大家参考,具体如下: 1.问题背景: 利用ECharts制作一个多柱子柱状图,其中数据源模拟动态获取 2.实现源码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>echarts-多柱子柱状图</title> <script type="text/

  • 详解ECharts使用心得总结

    前言 上周项目组要临时给客户做一个演示的原型,首页设计的是一个中国地图,本来打算用谷歌的地图,但是,做出来之后,整体的效果看起来太差了,最后就在网上搜相关的地图呈现的控件,然后就找到了这个ECharts报表呈现组件,挺不错的一个组件,而且地图数据都是离线的,真心很赞.但是,使用起来却颇费了一番工夫.所以就把使用中的一些心得体会跟大家分享一下. 1.    插件的下载 以下是ECharts的下载链接,需要注意的是ECharts内部也是依赖于另一个插件的叫ZRender,当然对于大部分图表而言不需要

  • 详解JWT token心得与使用实例

    本文你能学到什么? token的组成 token串的生成流程. token在客户端与服务器端的交互流程 Token的优点和思考 参考代码:核心代码使用参考,不是全部代码 JWT token的组成 头部(Header),格式如下: { "typ": "JWT", "alg": "HS256" } 由上可知,该token使用HS256加密算法,将头部使用Base64编码可得到如下个格式的字符串: eyJhbGciOiJIUzI1N

  • 详解vue-video-player使用心得(兼容m3u8)

    下载vue-video-player npm install vue-video-player --save 在main.js文件引入 import VideoPlayer from 'vue-video-player' require('video.js/dist/video-js.css') require('vue-video-player/src/custom-theme.css') Vue.use(VideoPlayer) 在页面中引入 <video-player ref="vi

  • 在 webpack 中使用 ECharts的实例详解

    Webpack 是目前比较流行的模块打包工具,你可以在使用 webpack 的项目中轻松的引入和打包 ECharts,这里假设你已经对 webpack 具有一定的了解并且在自己的项目中使用. npm 安装 ECharts 在 3.1.1 版本之前 ECharts 在 npm 上的 package 是非官方维护的,从 3.1.1 开始由官方 EFE 维护 npm 上 ECharts 和 zrender 的 package. 你可以使用如下命令通过 npm 安装 ECharts npm instal

  • echarts鼠标覆盖高亮显示节点及关系名称详解

    本文在echart自带的focusNodeAdjacency属性上进行修改. 1.效果 先上效果,原来是鼠标覆盖之后只显示节点名称不显示关系名称. 修改之后可以既显示节点名称又显示(自定义的)关系名称. 2.代码 html部分就这样. <div id="main"></div> js代码,使用了jquery和echarts.js,用的是源代码那版,因为待会要进源代码里修改-- echarts.js下载地址 其实js代码和echart官网demo的代码完全没区别-

  • echarts统计x轴区间的数值实例代码详解

    有时我们需要统计自定义echarts图,统计x轴区间的y轴数量. 思路是利用echarts的自定义配置:option.series[i].type='custom'中的renderItem(params, api)函数进行处理,这里包括了两个参数:params是对应每一个dataItem的数据信息;api是可调用的方法(api.value()和api.coord()).详情可以查看官方文档. 以下是改自官方实例: https://www.echartsjs.com/examples/editor

  • 使用Vue开发动态刷新Echarts组件的教程详解

    需求背景:dashboard作为目前企业中后台产品的"门面",如何更加实时.高效.炫酷的对统计数据进行展示,是值得前端开发工程师和UI设计师共同思考的一个问题.今天就从0开始,封装一个动态渲染数据的Echarts折线图组件,抛砖引玉,一起来思考更多有意思的组件. 准备工作 项目结构搭建 因为生产需要(其实是懒),所以本教程使用了 ==vue-cli==进行了项目的基础结构搭建. npm install -g vue-cli vue init webpack vue-charts cd

  • 详解MySQL拼接函数CONCAT的使用心得

    前几篇文章给大家介绍了MySQL中的替换函数(Replace).切分函数(SubString),今天我们一起来看看MySQL专业拼接"字符串"的函数:concat.老规矩,有好的建议和想法,记得写到评论中,等我上班摸鱼时,跟大家一起吃瓜~ 一.concat函数相关的几种用法 1-1.函数:concat(str1,str2,-) concat 函数一般用在SELECT 查询语法中,用于修改返回字段内容,例如有张LOL英雄信息表如下 mysql> select * from `LOL

  • Vue在echarts tooltip中添加点击事件案例详解

    目录 需求 解决方法 1.设置tooltip 2.定义hookToolTip变量 3.在methods中添加方法 4.完整代码 需求 需要在echarts tooltip点击学校的名称,跳转到详情页面:项目是从上海市---> 某个区----> 具体的学校(在最后一级的tooltip中绑定一个点击事件)  项目是用vue和echarts实现的,echarts是新版本(^5.0.2),并不能把点击事件绑定在window上 解决方法 1.设置tooltip enterable: true, //允许

  • 一文详解Vue如何整合Echarts实现可视化界面

    目录 一.什么是可视化 二.什么是Echarts 三.Echarts的优点 四.Vue 整合Echarts 下载Echarts依赖 Vue引入Echarts 测试使用Echarts 五.效果图 一.什么是可视化 可视化就是可以通过视觉进行传达的. 再专业一点就可以解释为可视化(Visualization)是利用计算机图形学和图像处理技术,将数据转换成图形或图像在屏幕上显示出来,再进行交互处理的理论.方法和技术. 将数据通俗的在屏幕中展现出来! 二.什么是Echarts 一个纯JavaScript

随机推荐