1. 程式人生 > >echarts儀表盤更換樣式全圓形換成半圓

echarts儀表盤更換樣式全圓形換成半圓

問題:想把圖一的儀表盤預設樣式換乘圖二半圓的這個樣式。官網中通過更換主題按鈕切換的儀表盤樣式,但是沒有實際的demo~具體是怎麼實現更換樣式的?

 

 

 

參考API:http://echarts.baidu.com/examples/editor.html?c=gauge

其實很簡單,只需要在series:裡面加上開始角度和結束角度即可。

startAngle: 180, //開始角度 左側角度
endAngle: 0, //結束角度 右側

 

寫了一個小的demo如下:

<!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({
                //backgroundColor: '#000000',
                backgroundColor: 'rgba(128, 128, 128, 0.1)', //rgba設定透明度0.1
                tooltip: {
                    formatter: "{a} <br/>{b} : {c}%"
                },
                toolbox: {
                    feature: {
                        restore: {},
                        saveAsImage: {}
                    }
                },
                series: [{
                    startAngle: 180, //開始角度 左側角度
                    endAngle: 0, //結束角度 右側
                    name: '業務指標',
                    type: 'gauge',
                    detail: { formatter: '{value}%' },

                    axisLine: { // 座標軸線  
                        lineStyle: { // 屬性lineStyle控制線條樣式  
                            color: [
                                [0.2, '#c23531'],
                                [0.8, '#63869e'],
                                [1, '#91c7ae']
                            ]
                        }
                    },

                    data: [{ value: 50, name: '完成率' }]
                }]
            });

            setInterval(function() {
                option.series[0].data[0].value = (Math.random() * 100).toFixed(2) - 0;
                myChart.setOption(option, true);
            }, 2000);
        </script>
    </body>

</html>

此demo的實現效果如下,妥妥的半圓