Skip to content

数据集

Chart组件支持通过options中的axis或者series设置数据,也支持通过传入data属性或者配置request异步请求函数来设置数据,通过这两种方式设置的数据,在内部都会被转为数据集Dataset以供图表使用。

直接传入二维数组或对象数组将会被识别为数据集而被直接使用,而返回一个对象{ xx: ['d1', 'd2'] }类似的结构会被转为二维数组,具体的转换顺序如下:

  1. 如果传入了自定义转换函数datasetConfig.transform,则直接使用此函数返回的数据
  2. xAxis/yAxis中寻找第一个能够索引数据的类目轴作为第一列
  3. series系列按照顺序索引到的数据生成每一列数据
  4. 原始数据中剩余未使用的数据按照字典序生成列数据

为了验证生成的数据集,可以通过调用Chart实例上的getDataset方法或者数据集。

如何索引数据?

Chart设置的对象类型的数据在内部转换时会通过坐标轴/系列的id或者name来获取到,因此使用对象类型的数据时,需要设置至少上述的一个属性,推荐使用id,使用name如果只是映射数据的话可能会导致副作用。

在系列中设置数据

Chart支持将数据直接设置到坐标轴/系列上。

loading

通过dataSource属性设置数据

通过dataSource设置数据后,将在内部通过转换为数据集后应用到图表中。

loading

通过request返回数据

通过配置request返回数据,返回对象类型数据将尝试在内部转换为数据集使用。

loading

直接使用数据集

通过dataSource或者request传递数据集类型数据(二维数组)。请注意,不要使用options.dataset直接传递数据集,此种方式会被覆盖。

loading

使用transform进行数据转换

使用以上方式在内部生成dataset后,可以基于此数据集+转换方法(transform)生成新的"数据集"。

loading
loading