如何建立有数dataset和echart组件的映射?

6.10版本以后有数开发了js组件。这意味着有数具体使用echart组件的能力。

有数使用echart,会用自己的dataset数据集来填充echart的数据部分。

问题:有数的dataset如何存储?

如何建立有数dataset和echart组件的映射? - 图1如何建立有数dataset和echart组件的映射? - 图2

从上图的左边部分可知有数对dataset是列数存储。 从右图可知dataset实际存储情况。 dataset实际上是一个二维数组。所以我们要取"地区"的数据我们只要遍历dataset的第一列数据,取"折扣"即遍历第二列数据。依次类推。

现在我们做一个最简单的echart 图形:

下面代码为echart官网的折线图实例:

option = {    xAxis: {           type: 'category', 
                                 data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']    },  
              yAxis: {           type: 'value'    },   
               series: [{        data: [820, 932, 901, 934, 1290, 1330, 1320],     
                                 type: 'line'    }]};

下图为填充有数dataset的折线图实例:

// 向右侧数据面板中拖入字段,可在代码中引用dataSet字段获取二维数组数据
//对dataset进行列遍历
dataSet = dataSet.map((data, i) => dataSet.map(d => d[i]));
var 地区 = dataSet[0];
var 折扣 = dataSet[1];
var 数量 = dataSet[2];
var 销售额 = dataSet[3];
option = {    xAxis: {        type: 'category',        
                              data: 地区    },    
              yAxis: {        type: 'value'    },    
              series: [{      data: 折扣,        
                              type: 'line'    }]};

如图效果:

如何建立有数dataset和echart组件的映射? - 图3