Echars學習-動態隱藏扇形區域的文字描述。

有些時候我們的餅圖的某個扇形區域爲0時,label還會顯示,當我們想要隱藏label時,可以使用下面在設置data時 ‘直接訪問‘這塊的方法實現。

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
    <!-- 引入 echarts.js -->
    <script src="echarts.js"></script>
    <script src="pie.js"></script>
</head>
<body>
    <!-- 爲ECharts準備一個具備大小(寬高)的Dom -->
    <div id="main" style="width: 600px;height:400px;"></div>
    <script type="text/javascript">
    var leiTotal = 0;

        // 基於準備好的dom,初始化echarts實例
        var myChart = echarts.init(document.getElementById('main'));

    var option = {
    title : {
        text: '某站點用戶訪問來源',
        subtext: '純屬虛構',
        x:'center'
    },
    tooltip : {
        trigger: 'item',
        formatter: "{a} <br/>{b} : {c} ({d}%)"
    },
    legend: {
        orient : 'vertical',
        x : 'left',
        formatter:function (name) {
                      return name;
                  },
        data:['直接訪問','郵件營銷','聯盟廣告','視頻廣告','搜索引擎']
    },
    toolbox: {
        show : true,
        feature : {
            mark : {show: true},
            dataView : {show: true, readOnly: false},
            magicType : {
                show: true, 
                type: ['pie', 'funnel'],
                option: {
                    funnel: {
                        x: '25%',
                        width: '50%',
                        funnelAlign: 'left',
                        max: 1548
                    }
                }
            },
            restore : {show: true},
            saveAsImage : {show: true}
        }
    },
    calculable : true,
    series : [
        {
            name:'訪問來源',
            type:'pie',
            radius : '55%',
            center: ['50%', '60%'],
            data:[
                {    value:leiTotal,
                     name:'直接訪問',
                     label: {
                        normal: {
                            show: function () {
                                if (leiTotal == 0)
                                { return false; }
                            }()
                        }
                     },
                    labelLine: {
                        normal:{
                            show: function () {
                                if (leiTotal == 0)
                                { return false; }
                            }()
                        }
                    }

                },
                {value:310, name:'郵件營銷'},
                {value:234, name:'聯盟廣告'},
                {value:135, name:'視頻廣告'},
                {value:1548, name:'搜索引擎'}
            ]
        }
    ]
};




    myChart.setOption(option);  
    </script>
</body>
</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章