欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ECharts柱狀圖過多添加滾動條的步驟(親測可用)

 更新時間:2024年01月11日 11:21:08   作者:凌霄玉階非所愿  
這篇文章主要介紹了ECharts柱狀圖過多添加滾動條的步驟(親測可用),添加echarts柱狀圖滾動條,首先添加js用來判斷當(dāng)前視圖要顯示幾個及是否顯示滾動條,本文結(jié)合實例代碼介紹的非常詳細,需要的朋友參考下吧

ECharts柱狀圖過多添加滾動條的步驟(親測可用)

echarts引用js需較新版本,否則會不顯示
ECharts官網(wǎng)地址

添加echarts柱狀圖滾動條,步驟如下:

首先添加js用來判斷當(dāng)前視圖要顯示幾個及是否顯示滾動條:

        var _DEPTNUMER = []; //存入所有科室
        var showEchart = false;
        var namenum = 0;
        if (_DEPTNUMER.length > 0) {
            namenum = Math.floor(100 / (_DEPTNUMER.length / 3));         //這個3可以順便調(diào)整是用來判斷當(dāng)前視圖要顯示幾個
            if (_DEPTNUMER.length > 3) {                                 //3也可以調(diào)整用來判斷是否顯示滾動條
                showEchart = true;
            } else {
                showEchart = false;
            }
        }

添加echarts滾動條:

 dataZoom: [
                    {
                        type: 'slider',
                        realtime: true,
                        start: 0,
                        end: namenum,  // 數(shù)據(jù)窗口范圍的結(jié)束百分比。范圍是:0 ~ 100。
                        height: 5, //組件高度
                        left: 5, //左邊的距離
                        right: 5, //右邊的距離
                        bottom: 10, //下邊的距離
                        show: showEchart,  // 是否展示
                        fillerColor: "rgba(17, 100, 210, 0.42)", // 滾動條顏色
                        borderColor: "rgba(17, 100, 210, 0.12)",
                        handleSize: 0,      //兩邊手柄尺寸
                        showDetail: false, //拖拽時是否展示滾動條兩側(cè)的文字
                        zoomLock: true,         //是否只平移不縮放
                        moveOnMouseMove: false, //鼠標(biāo)移動能觸發(fā)數(shù)據(jù)窗口平移
                        //zoomOnMouseWheel: false, //鼠標(biāo)移動能觸發(fā)數(shù)據(jù)窗口縮放
                         //下面是自己發(fā)現(xiàn)的一個問題,當(dāng)點擊滾動條橫向拖拽拉長滾動條時,會出現(xiàn)文字重疊,導(dǎo)致效果很不好,以此用下面四個屬性進行設(shè)置,當(dāng)拖拽時,始終保持顯示六個柱狀圖,可結(jié)合自己情況進行設(shè)置。添加這個屬性前后的對比見**圖二**
                         startValue: 0, // 從頭開始。
                         endValue: 6,  // 最多六個
                         minValueSpan: 6,  // 放大到最少幾個
                         maxValueSpan: 6,  //  縮小到最多幾個
                    },
                    {
                        type: "inside",  // 支持內(nèi)部鼠標(biāo)滾動平移
                        start: 0,
                        end: namenum,
                        zoomOnMouseWheel: false,  // 關(guān)閉滾輪縮放
                        moveOnMouseWheel: true, // 開啟滾輪平移
                        moveOnMouseMove: true  // 鼠標(biāo)移動能觸發(fā)數(shù)據(jù)窗口平移 
                    }
                ]

如下圖:

圖二更改前(鼠標(biāo)放到滾動條上面左右拖拽拉長時):

更改后:

擴展:

echarts使用getZr()事件獲取柱狀圖當(dāng)前點擊列的數(shù)據(jù)

 var t = document.getElementById("cardChart");
    t.style.width = window.offsetWidth + "px";
    var cardChart = echarts.init(t),
                options = {
                    color: ['#3398DB'],
                    title: {
                        left: "right",
                        //text: new Date().getFullYear() + "年數(shù)據(jù)",
                        textStyle: {
                            color: "#2c2c2c",
                            fontSize: 14,
                            fontWeight: 500
                        }
                    },
                    tooltip: {
                        trigger: 'axis',
                        axisPointer: {            // 坐標(biāo)軸指示器,坐標(biāo)軸觸發(fā)有效
                            type: 'shadow'        // 默認為直線,可選為:'line' | 'shadow'
                        }
                    },
                    grid: {
                        left: '3%',
                        right: '4%',
                        bottom: '3%',
                        containLabel: true
                    },
                    xAxis: [{
                        type: "category",
                        data: dataYearCountName,
                        axisTick: {
                            alignWithLabel: true
                        },
                        axisLabel: {
                            interval: 0,    //強制文字產(chǎn)生間隔
                            rotate: 45,     //文字逆時針旋轉(zhuǎn)45°
                            textStyle: {    //文字樣式
                                color: "black",
                                fontSize: 14,
                                fontFamily: 'Microsoft YaHei'
                            }
                        }
                    }],
                    yAxis: [
                            {
                                type: "value"
                            }
                        ],
                    series: [
                            {
                                name: "例數(shù)",
                                type: "bar",
                                barWidth: "60%",
                                data: dataYearCountNum
                            }
                    ]
        };
    //-----------------從這里開始 -----------------
    //cardChart 柱狀圖名稱
    cardChart.setOption(options);
    cardChart.off('click'); //防止觸發(fā)兩次點擊事件
    cardChart.getZr().on('click', (params) => {
        let pointInPixel = [params.offsetX, params.offsetY];
        if (cardChart.containPixel('grid', pointInPixel)) {
            let pointInGrid = cardChart.convertFromPixel({
                seriesIndex: 0
            }, pointInPixel);
            let xIndex = pointInGrid[0]; //索引
            let handleIndex = Number(xIndex);
            let seriesObj = cardChart.getOption(); //圖表object對象
            var op = cardChart.getOption();
            //獲得圖表中點擊的列
            var month = op.xAxis[0].data[handleIndex];  //獲取點擊的列名
            console.log(month);
            console.log(handleIndex, seriesObj);
        };
    });

到此這篇關(guān)于ECharts柱狀圖過多添加滾動條(親測可用)的文章就介紹到這了,更多相關(guān)ECharts柱狀圖滾動條內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論