echart 图表问题

本文介绍了Echarts的多种图表类型,包括纵坐标最大值设定、堆叠柱状图、折线图、双曲线折线图、以及柱状图与折线图的组合使用,并强调了tooltips的formatter函数在数据展示中的重要性。
摘要由CSDN通过智能技术生成

echart 网址 : http://echarts.baidu.com/index.html

纵坐标的最大值

//计算最大值
    var getMax=function(arr,ifnumber){
   
        var newArr=[];
        for (var i = 0; i < arr.length; i++) {
            newArr.push(arr[i]);
        }
        for (var i = 0; i < newArr.length; i++) {
            if(isNaN(newArr[i])){
                newArr[i]=0;
            }
        }
        if (isNaN(Math.max.apply(null,newArr))||Math.max.apply(null,newArr)<=1) {
            if(ifnumber==undefined || ifnumber==''){
                return 1;
            }else{
                return 10;
            }
        }else if(isNaN(Math.max.apply(null,newArr))||Math.max.apply(null,newArr)<=10){
            return 10;
        }else{
            var max = Math.max.apply(null,newArr); 
            //获得数组的最大值
            var num = Math.ceil(max / Math.pow(10,String(Math.ceil(max)).length-1) );
            max = Math.pow(10,String(Math.ceil(max)).length-1 )*num;
            return max;
        }
    }

堆叠柱状图

比较完整

任何要显示给用户看的数据或者数据格式都要在tooltips设置 formatter: function (params),params参数是个神奇的参数

data:[
        [日期],
        [数据百分比],
        [数据总量],
        [legend 值]
    ]
var allSeries=[],
        lengdata = [],
        biao=[],
        all=[],
        topp='',
        len = data.length,
        lenfo = data[len-1].length;
        var j=0;
        //Series显示的数据
        for(var i=0;i<lenfo-1;i++){
              lengdata[i] = data[len-1][i+1];
              allSeries[i] = {};
              allSeries[i].name =data[len-1][i+1];
              allSeries[i].type = 'bar';
              //类型为柱状图
              allSeries[i].stack = '总量';
              allSeries[i].barMinWidth = 10;
              柱子的大小
              allSeries[i].barMaxWidth =28;
              allSeries[i].barGap =3;
              allSeries[i].left =20;
              allSeries[i].itemStyle =   {
  "normal":{
  "barBorderRadius":0}};
              allSeries[i].data = data[i+1];
     }

    for(var i=lenfo;i<len-1;i++){
        //显示的数量值
        biao[j] = data[i];
        j++;
    }
    if (data[len-1][0].search('TM Number') == '-1' ) {
        topp = 25; }
    else{
        topp =22;
    }
        var chart = echarts.init(document.getElementById(containerId, 'infographic'));
        chart.setOption({
            tooltip : {
                 trigger: 'axis',
                 //指示器
                 axisPointer:{
                    type: 'line',
                    lineStyle: {
                      color: '#008FD4',
                      width: '2'
                    }
                 },
                 position: function (point, params, dom, rect, size) {
                    // 固定在顶部
                    return [point[0]+15, point[1]+15];
                },
                //鼠标移入显示的值
                formatter: function (params) {

                 var jj="";
                for (var i = 0; i < params.length; i++) {
                    var index = params[i].dataIndex;
                    var biaodata='';
                      if (params[i].seriesName =='other' || params[i].seriesName =='sone' ) {
                          biaodata = biao[0][index] ;
                      }

                      else
                         biaodata = biao[6][index];
                    jj +='<br/>' + '<div style="width: 15px;height: 10px;border-radius:2px;background:'+params[i].color+';display: inline-block;"></div>'+' '+params[i].seriesName+':'+params[i].value+'%('+biaodata+')';
                }

                  return params[0].name+ jj;}
            },
            //左上角的标题
            title:{
              text:data[len-1][0],
              x:'le
ECharts是一个功能强大的交互式图表和可视化库,用于在浏览器中创建各种类型的图表。它提供了丰富的图表类型和交互功能,可以帮助用户更好地展示和分析数据。ECharts支持的图表类型包括折线图、柱状图、散点图、饼图、雷达图、地图等。用户可以根据自己的需求选择合适的图表类型,并通过配置选项进行个性化设置,如调整颜色、样式、标签等。此外,ECharts还支持数据的动态更新和交互操作,用户可以通过鼠标滚动、拖拽、点击等方式与图表进行交互,实现数据的探索和展示。通过使用ECharts,用户可以轻松创建出美观、交互性强的图表,用于数据可视化和展示[^1]。 以下是一个使用ECharts创建柱状图的示例代码: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>My First ECharts</title> <!-- 引入 ECharts 文件 --> <script src="https://cdn.jsdelivr.net/npm/echarts@5.1.2/dist/echarts.min.js"></script> </head> <body> <!-- 为 ECharts 准备一个具备大小(宽高)的 DOM --> <div id="myChart" style="width: 600px;height:400px;"></div> <script type="text/javascript"> // 基于准备好的 DOM,初始化 ECharts 实例 var myChart = echarts.init(document.getElementById('myChart')); // 指定图表的配置项和数据 var option = { title: { text: '柱状图示例' }, xAxis: { data: ['A', 'B', 'C', 'D', 'E'] }, yAxis: {}, series: [{ name: '销量', type: 'bar', data: [5, 20, 36, 10, 10] }] }; // 使用刚指定的配置项和数据显示图表 myChart.setOption(option); </script> </body> </html> ``` 这段代码创建了一个柱状图,横轴表示类别,纵轴表示销量。通过设置xAxis和yAxis的data属性和series的data属性,可以指定横轴和纵轴的数据。通过设置title属性,可以给图表添加标题。最后,使用myChart.setOption(option)方法将配置项应用到图表上,实现图表的展示。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值