1. 程式人生 > >使用ECharts繪製南丁格爾圖

使用ECharts繪製南丁格爾圖

1、先畫餅圖,主要是通過扇形的弧度表現不同類目的資料在總和中的佔比。

只有一維的數值,不需要給類目。因為不在直角座標系上,所以也不需要xAxisyAxis

<!-- 為ECharts準備一個具備大小(寬高)的Dom -->
<div id="main" style="width: 800px;height:800px;">ss</div>
<script type="text/javascript">
    // 基於準備好的dom,初始化echarts例項
    var myChart = echarts.init(document.getElementById('main'));
    // 指定圖表的配置項和資料
    var option = {
        series:[
            {
                name: '視訊APP訪問人數統計',
                type: 'pie',
                radius: '55%',
                data: [
                    {value: 305, name: '優酷'},
                    {value: 145, name: '愛奇藝'},
                    {value: 585, name: '騰訊視訊'},
                    {value: 300, name: '嗶哩嗶哩'},
                    {value: 195, name: '人人視訊'}
                ]
            }
        ]
    };
    // 使用剛指定的配置項和資料顯示圖表。
    myChart.setOption(option);
</script>

此時,data一個包含 namevalue 屬性的物件 

南丁格爾圖:在series中加上 

roseType: 'angle',z

注意使用 http://echarts.baidu.com/download.html中的原始碼,防止內容不存在之內的錯。

陰影配置

itemStyle: {
    // 陰影的大小
    shadowBlur: 200,
    // 陰影水平方向上的偏移
    shadowOffsetX: 0,
    // 陰影垂直方向上的偏移
    shadowOffsetY: 0,
    // 陰影顏色
    shadowColor: 'rgba(0, 0, 0, 0.5)'
}

itemStyleemphasis是滑鼠 hover 時候的高亮樣式。

itemStyle: {
    emphasis: {
        shadowBlur: 200,
        shadowColor: 'rgba(0, 0, 0, 0.5)'
    }
}

1、背景色是全域性的,所以直接在 option 下設定 backgroundColor

2、文字的樣式可以設定全域性的 textStyle也可以每個系列分別設定,每個系列的文字設定在 label.textStyle

3、餅圖的話還要將標籤的視覺引導線的顏色設為淺色。

 labelLine: {
        normal: {
            lineStyle: {//將標籤的視覺引導線的顏色設為淺色
                color: 'rgba(255, 255, 255, 0.3)'
            }
        }
    },
    itemStyle: {//陰影的配置,還可以設定扇形的顏色,在normal中編輯color來設定,設定後的扇形顏色是一樣的
        normal: {
            // 陰影的大小
            shadowBlur: 200,
            // 陰影顏色
            shadowColor: 'rgba(0, 0, 0, 0.5)'
        }
    }
}