我們先來(lái)看實(shí)現(xiàn)效果
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、微信小程序、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了平城免費(fèi)建站歡迎大家使用!

以這張圖來(lái)舉例
通過(guò)重新封裝可以實(shí)現(xiàn)雙向條形圖的顯示
既可以橫向比較同一天的收入支出情況
也可以豎向比較不同日期的收入/支出情況
我們先來(lái)準(zhǔn)備數(shù)據(jù)源:
{
   columns: ["日期", "收入", "支出"],
   rows: [
    {
     日期: "8/7",
     收入: -233,
     支出: 120
    },
    {
     日期: "8/5",
     收入: -322,
     支出:450
    },
    {
     日期: "7/4",
     收入: -432,
     支出: 430
    },
    {
     日期: "10/4",
     收入: -233,
     支出: 210
    }
   ]
  };注意這里一定要把其中一項(xiàng)的值設(shè)置為負(fù)數(shù),否則無(wú)法顯示到左邊一欄
設(shè)置完數(shù)據(jù)我們可以先看一眼效果:

初步實(shí)現(xiàn)條形圖一左一右的效果
那如何實(shí)現(xiàn)同一維度的兩個(gè)指標(biāo)在同一行顯示?
我們?cè)谂渲脤傩灾屑由线@么一個(gè)屬性
"stack"
this.chartSettings = {
   stack: {
    xxx: [`收入`, `支出`]
   }
  };查看官方文檔,我們來(lái)理解一下這個(gè)屬性
series[i]-bar.stack string
數(shù)據(jù)堆疊,同個(gè)類目軸上系列配置相同的stack值可以堆疊放置。
也就是說(shuō),設(shè)置了這個(gè)屬性,我們可以讓兩個(gè)條形圖合并為一個(gè)
如果不考慮正負(fù)問(wèn)題,堆疊即可實(shí)現(xiàn)下面這個(gè)效果

感興趣的可以去官方看一下在線運(yùn)行的演示效果
https://www.echartsjs.com/examples/zh/editor.html?c=bar-negative
設(shè)置完這個(gè)屬性我們來(lái)看一下效果

可以看到同一日期的收入支出情況已經(jīng)在一行顯示了
最后我們來(lái)解決坐標(biāo)軸及圖形標(biāo)簽值顯示為負(fù)數(shù)的問(wèn)題
我們可以在 chartsetting 屬性中修改 label 的 formatter 屬性
自定義標(biāo)簽的文字
根據(jù)我們的需求,通過(guò) Math.abs()的方法,以絕對(duì)值的形式顯示
 this.chartSettings = {
   label: {
    normal: {
     show: true,
     formatter: params => {
      return `${params.seriesName}:${Math.abs(params.value)}`;
     }
    }
   }
  };坐標(biāo)軸數(shù)值修改也是一個(gè)道理
 afterConfig(options) {
   options.xAxis[0].axisLabel = {
    formatter: function(value) {
     return Math.abs(value);
    } //顯示的數(shù)值都取絕對(duì)值
   };
   return options;
  },這樣就可以實(shí)現(xiàn)我們的最終效果了

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
                本文題目:vue基于v-charts封裝雙向條形圖的實(shí)現(xiàn)代碼
                
                網(wǎng)站地址:http://www.chinadenli.net/article0/jdgcio.html
            
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、網(wǎng)站營(yíng)銷、、Google、移動(dòng)網(wǎng)站建設(shè)、定制開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
