【前端统计图】echarts实现简单柱状图

5640239-4eacb07cc1d10ecd.png
图片.png
<!DOCTYPE html>
<html>
     <head>
          <meta charset="utf-8">
          <title>五分钟上手之柱状图</title>
          <!-- 引入 echarts.js -->
          <script src="js/echarts.min.js"></script>
          <script src="js/jquery-1.11.3.js"></script>
     </head>
     <body>
          <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
          <div id="main" style="width: 600px;height:400px;"></div>
          <script type="text/javascript">
              // 基于准备好的dom,初始化echarts实例
              var myChart = echarts.init(document.getElementById('main'));
              // 指定图表的配置项和数据
              myChart.setOption({
                   title: {
                        text: '异步数据加载示例'
                   },
                   tooltip: {},
                   legend: {
                        data: ['销量']
                   },
                   xAxis: {
                        data: ["1","2","3","4","5"]
                   },
                   yAxis: {},
                   series: [{
                        name: '销量',
                        type: 'bar',
                        data: ["1","2","3","4","5"]
                   }]
              });
           
             
          </script>
     </body>
</html>

加上json数据之后,动态生成 的统计图


5640239-0d560f19533e76f7.png
图片.png
<!DOCTYPE html>
<html>
     <head>
          <meta charset="utf-8">
          <title>五分钟上手之柱状图</title>
          <!-- 引入 echarts.js -->
          <script src="js/echarts.min.js"></script>
          <script src="js/jquery-1.11.3.js"></script>
     </head>
     <body>
          <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
          <div id="main" style="width: 600px;height:400px;"></div>
          <script type="text/javascript">
              // 基于准备好的dom,初始化echarts实例
              var myChart = echarts.init(document.getElementById('main'));
              // 指定图表的配置项和数据
              myChart.setOption({
                   title: {
                        text: '异步数据加载示例'
                   },
                   tooltip: {},
                   legend: {
                        data: ['销量']
                   },
                   xAxis: {
                        data: []
                   },
                   yAxis: {},
                   series: [{
                        name: '销量',
                        type: 'bar',
                        data: []
                   }]
              });
              // 异步加载数据
              $.get('data.json').done(function (data) {
                   // 填入数据
                   myChart.setOption({ xAxis: { data: data.categories }, series: [{
                        // 根据名字对应到相应的系列
                        name: '销量',
                        data: data.data
                   }]
                   });});
          </script>
     </body>
</html>

data.json数据

{ 
    "categories": [ 
        "苹果", 
        "橘子", 
        "荔枝", 
        "桃子", 
        "栗子", 
        "梨子", 
        "柿子" 
    ], 
    "data": [ 
        500, 
        280, 
        386, 
        190, 
        107, 
        207, 
        452 
    ] 
}

项目地址下载:

ajax数据交互例子:



// 柱状图
    var x_data;// x轴数据
    var y_data;// y轴数据
    var zChart = echarts.init(document.getElementById("main1"));// 柱形图模板
    function zFun(x_data, y_data) {
        zChart.setOption({
            color : [ '#3398DB' ],
            tooltip : {
                trigger : 'axis',
                axisPointer : { // 坐标轴指示器,坐标轴触发有效
                    type : 'shadow' // 默认为直线,可选为:'line' | 'shadow'
                }
            },
            legend : {
                data : [ '心率值' ]
            },
            grid : {
                left : '3%',
                right : '20%',
                bottom : '20%',
                containLabel : true
            },
            xAxis : [ {
                type : 'category',
                data : x_data,
            } ],
            yAxis:[ {          //纵轴标尺固定
                  type: 'value',
                  scale: true,
                  name: '心率值',
                  max: 140,
                  min: 0,
                  splitNumber:20,
                  boundaryGap: [0.2, 0.2]
              } ],
            series : [ {
                name : '心率',
                type : 'bar',
                barWidth : '30%',
                data : y_data
            } ]
        }, true);
    }

文末福利:

福利一:前端,Java,产品经理,微信小程序,Python等10G资源合集大放送:https://www.jianshu.com/p/e8197d4d9880
福利二:微信小程序入门与实战全套详细视频教程

5640239-110eda03fdb4f88a
image

原文作者:祈澈姑娘
原文链接:https://www.jianshu.com/u/05f416aefbe1
创作不易,转载请告知

90后前端妹子,爱编程,爱运营,爱折腾。
坚持总结工作中遇到的技术问题,坚持记录工作中所所思所见,欢迎大家一起探讨交流。

posted @ 2018-03-23 19:10  前端视听  阅读(310)  评论(0编辑  收藏  举报