echarts設置了,圖例還是不顯示問題


 

echrts案例網址

https://www.makeapie.com/explore.html#sort=rank~timeframe=all~author=all

總結下圖例不顯示問題。百度都說legend要和series的name一直。是的,沒毛病。

下面我總結下單折線圖和多折線圖的圖例設置問題

先說單折線圖的

 

// 指定圖表的配置項和數據
var option = {
 legend: {
            show: true,
            right: '10%',
            top: 2,
            icon: 'rect',
            itemWidth: 10,
            itemHeight: 4,
            textStyle: {
                color: '#1a1a1a',
                fontSize: 12,
            },
            name:""
        },
     series: [{
             name: "",
            type: 'line', //圖表類型
            // data: [266, 200, 306, 100, 100, 280, 500, 500],
            data: [],
            symbol: 'none',

        }]
    
}
//頁面加載調用接口在寫。legend是接口獲取的數據,是啥就寫啥
 myChart.setOption({
                xAxis: {
                    data: monthData.reverse()
                },
                series: {
                    name:legend,
                    data: saleData.reverse()
                },
                legend: {
                    name: legend
                },
            });
            myChart.resize();

最開始我在配置圖表數據中legend那塊寫的是data,但是死活不出來。后來去官網看了,里面是name,就改了name,沒想到居然出來了。

下面是多條折現圖例配置

 

 

var option = {
 legend: {
            show: true,
            right: '15%',
            top: 12,
            width: 300,
            height: 100,
            icon: 'rect',
            itemWidth: 10,
            itemHeight: 4,
            textStyle: {
                color: '#1a1a1a',
                fontSize: 12,
            },
            data: "",

        },
  series: {
            type: "line",
            name: "",
            data: [],
        },

}
//然后是接口調用的方法中寫
         var name = []; //設置圖標每條線名稱
            for (var i = 0; i < item.data.length; i++) {
                var obj = new Object();
                obj.name = item.data[i].name.split("/")[item.data[i].name.split("/").length-1]
                name[i] = obj;
            }
           console.log(name);
          //折線圖數據
            var s_data = [];
            
            for (var j = 0; j < item.data.length; j++) {
                var saleNum=[];
             item.data[j].sales_data.map((items) => {
                let mData = items/10000;
                saleNum.push(mData);
            });
            var saleName=item.data[j].name.split("/")[item.data[j].name.split("/").length-1];
                s_temp = {
                    name: saleName,
                    type: "line",
                    symbol: 'none',
                    data: saleNum
                };
                s_data.push(s_temp)
            }
 // 柱狀圖 需要倒序數組
            myChart.setOption({
                xAxis: {
                    data: monthData.reverse()
                },
                legend: {
                    data: name
                },
                series: s_data

            });
            myChart.resize();

 


免責聲明!

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



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