echarts - 設置x||y軸文案、提示文字等為固定字數,超出顯示"..."


起初看到這種需求的時候,我是這個狀態

對,我是拒絕的,人家echats畫出來就是一個canvas,你讓我怎么加...
但是,作為一個“有點追求的”前端,我得想招試試
總結下來,唯一的突破點就是echarts的配置了。

echarts配置項網址:http://echarts.baidu.com/option.html
最后果然被我找到了


一、先說x||y軸的文案處理:


如圖,x軸的配置也就都在這里了

而關於x軸文案的設置,就是這個axisLabel屬性了

而跟內容有關的也就是這個formatter了,他有一個強大的回調函數,其參數value就是軸上顯示的文案,

用這個萬能的回調函數,還怕什么刁鑽的效果是做不出來的!
於是,一頓操作效果就出來了

代碼如下:

 1 axisLabel :  2  {  3      formatter : function (value)  4  {  5          let valueTxt = '';  6          if (value.length > 3) {  7              valueTxt = value.substring(0, 4) + '...';  8  }  9          else { 10              valueTxt = value; 11  } 12          return valueTxt ; 13  } 14  }

 

二、圖表上提示文案加“...”


后來,餅圖的數據提示文案也要求這個設置,這次我不慌了。

依照這個思路,我就去餅圖配置項中找答案去了;

同理,負責顯示文案的是label這個屬性,那么提示內容肯定也是歸他管的!

果然,讓我找到了,這個強大的formatter!

他也有強大的回調函數,返回的參數更是多!

 

 

 

其中,參數params的name屬性就是要顯示的文案
所以同理又是一段操作,效果也出來了:
代碼如下:

 1 label :  2  {  3  normal :  4  {  5          show : true, position : 'inner',  6          formatter : function (params)  7  {  8              console.log(params) let newName = '';  9              if (params.name.length > 5) { 10                  newName = params.name.substring(0, 5) + '...'; 11  } 12              else { 13                  newName = params.name; 14  } 15              return newName; 16  } 17  } 18  },

 

總結,依照這個思路,以后想要對提示文案啥的做任何"非人類"的創意設置,都是可以的了!

+1+1+1 ^_^

 

聲明:

  請尊重博客園原創精神,轉載或使用圖片請注明:

  博主:xing.org1^

  出處:http://www.cnblogs.com/padding1015/


免責聲明!

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



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