給echarts添加坐標軸axisLine的箭頭樣式


好多朋友找不到對應的位置, 大概是因為echarts版本更新

這里以2.2.7為例

 

 

echarts的邊框axisLine默認的樣式只有實現,虛線,雙實線幾種,現在有需求要求邊線變成箭頭形狀,echarts本身不支持,不過因為畫箭頭只是最簡單的水平或者垂直的實線加上兩個短線段,所以直接修改echarts代碼即可.

 

畫線部分在 17024附近  (18462行 2.2.7)

 

 

Line.prototype = {
        type: 'line',
        buildPath: function (ctx, style) {

 這里面

在18470的大括號后面直接加上

 

else if(style.lineType == 'arrow' ){
                ctx.moveTo(style.xStart, style.yStart);
                ctx.lineTo(style.xEnd, style.yEnd);
                var x = style.xEnd;
                var y = style.yEnd;
                var dx = style.lineWidth / 2;
                if(style.xStart == style.xEnd ){
                    ctx.moveTo(x - 6 * dx , y + 8 *dx );
                    ctx.lineTo(x , y );
                    ctx.lineTo(x + 6 * dx, y + 8 * dx);
                   // ctx.closePath();
                }else{
                    ctx.moveTo(x - 8 * dx , y - 6 *dx );
                    ctx.lineTo(x , y );
                    ctx.lineTo(x - 8 * dx, y + 6 * dx);

                }


            }else if(style.lineType == 'disarrow' ){
                ctx.moveTo(style.xEnd, style.yEnd);
                ctx.lineTo(style.xStart, style.yStart);
                
                var x = style.xStart;
                var y = style.yStart;
                var dx = style.lineWidth / 2;
                if(style.xStart == style.xEnd ){
                    ctx.moveTo(x - 6 * dx , y - 8 *dx );
                    ctx.lineTo(x , y );
                    ctx.lineTo(x + 6 * dx, y - 8 * dx);
                   // ctx.closePath();
                }else{
                    ctx.moveTo(x - 8 * dx , y - 6 *dx );
                    ctx.lineTo(x , y );
                    ctx.lineTo(x - 8 * dx, y + 6 * dx);

                }


            }

 

新加入兩種類型 arrow 和 disarrow, 其中 disarrow就是反向的arrow.

使用方法同axisLine

axisLine:{
                lineStyle:{
                    type:"arrow"
                }                          
            }

 

效果

 

disarrow 是向下的箭頭, 適用一些特殊的指示情況 

 

 

echarts 2.2.7打包下載地址

https://download.csdn.net/download/nnigou/10396747 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM