zoukankan      html  css  js  c++  java
  • Echart的使用legend遇到的问题小记

    Echart的图标真的很漂亮,使用也相对简单。但是官网的配置项的例子感觉有所保留。

    在作柱状图的时候,我是通过Ajax动态获取的数据,但是图例legend就是不显示出来,其实到现在我也还没弄明白,为啥不显示。

    下面贴一下我百度的可能的方案(这些都没有解决我的问题):

    • echart.js下的精简版,不支持图例 --可以自定义下载对应的组件;
    • legend的data数据需要是对象数组,自行检查是否符合;

    下面贴一下我动态数据的实例:

    Ajax获取值:

        $(document).ready(function(){
            var xData = [],yData=[];
            $.ajax({
                type: 'post',
                url: '',
                data:{},
                dataType: 'json',
                success: function(data){
                    if(data){
                        $.each(data,function(index,item){
                            xData.push(item.subject);
                            yData.push(item.count);
                        });
                        bindData(xData,yData);
                    }
                },
                error: function(){
                    alert('Error');
                }
            });
        });
        
    

    数据传值给data:

            function bindData(xData,yData){
                var chart = document.getElementById('bar');
                var myBarChart = echarts.init(chart);
                var option = {
                    title : {
                        text: '培训主题统计信息',
                        x: 'center',
                    },
                    tooltip : {
                        trigger: 'axis',
                        axisPointer : {
                            type : 'shadow'
                        }
                    },
                    legend:  {
                        show: true,
                        data: (function(){
                            var res = [];
                            var len = xData.length;
                            for(var i=0,size=len;i<size;i++) {
                                res.push({
                                    name: xData[i],
                                    textStyle:{
                                    fontSize: 12,
                                    color: '#ccc'
                                }
                            });
                        }
                        return res;
    
                    })()
                },
                toolbox: {
                    show : true,
                    feature : {
                        mark : {show: true},
                        dataView : {show: true, readOnly: false},
                        magicType : {show: true, type: ['line', 'bar']},
                        restore : {show: true},
                        saveAsImage : {show: true}
                    }
                },
                calculable : true,
                xAxis : [
                    {
                        type : 'category',
                        data: xData,
                        axisLabel: {
                            interval : 0,
                            rotate: -15
                        },
                        axisTick: {
                            alignWithLabel: true
                        }
                    }
                ],
                yAxis : [
                    {
                        type : 'value'
                    }
                ],
                series : [
                    {
                        name: '培训主题选择人数',
                        type:'bar',
                        data: yData,
                        barWidth: '50%',
                        markLine : {
                            data : [
                                {
                                    type : 'max',
                                    name: '最大值',
                                    lineStyle: {
                                        color: '#f00'
                                    }
                                }
                            ],
                            label : {
                                position: 'end',
                                formatter: '{b}:{c}'
                            }
                        },
                        itemStyle : {
                            normal: {
                                label: {
                                    show: true,
                                    textStyle: {
                                        fontWeight: 'bolder',
                                        fontSize: '12',
                                        fontFamily: '微软雅黑'
                                    },
                                    position: 'top'
                                },
                                color: function (params) {
                                    var colorList = [
                                        '#FFB273', '#1D7373', '#BF7130', '#FF7400',
                                        '#FF7373', '#006363'
                                    ];
                                    return colorList[params.dataIndex]
                                }
                            }
                        }
    
                    }
                ]
            };
            myBarChart.setOption(option);
        }
    
    
  • 相关阅读:
    distcc加速内核编译
    ssh不检查server变化
    bbb u-boot SPI 启动
    Debian NAT共享上网
    Debian Epson L455 打印机
    Learn CMake's Scripting Language in 15 Minutes (ZZ)
    网络启动并安装Debian
    GNU LD 脚本学习笔记
    JLink defective
    获取真实mac地址
  • 原文地址:https://www.cnblogs.com/xinxinmifan/p/make-echarts.html
Copyright © 2011-2022 走看看