groupX
上一篇
groupColor
下一篇
groupY
Loading...
groupY 是 group 函数组的一个变种,专门用于对离散的 x 通道进行分组,并且对通道根据指定的 Reducer 进行聚合。等效于 channels = ['x'] 的 group,具体的使用方式和配置项与 group 函数相同。下面,只是针对 groupX 函数的使用场景和配置项进行说明。
| 属性 | 描述 | 类型 | 默认值 | 
|---|---|---|---|
| [channel] | 输出到具体 mark 的 channel 数据的聚合方式 | Reducer | 
有关 Reducer 的详细说明,请参考 group 函数的配置项。
下面,我们展现个人群的年龄分布情况。我们使用 groupX 函数对数据进行分组,并且对 x 通道进行聚合,计算出每个 state 的 population 折线长度和分布情况。注意在对应的 mark 中有 transform 方法可以使用数据的变换。
const { Chart } = G2;const chart = new Chart({container: 'container',});chart.coordinate({ transform: [{ type: 'transpose' }] });chart.data({type: 'fetch',value:'https://gw.alipayobjects.com/os/bmw-prod/b6f2ff26-b232-447d-a613-0df5e30104a0.csv',});chart.link().scale('y', { formatter: '.0%' }).transform({ type: 'groupX', y: 'min', y1: 'max' }).encode('x', 'state').encode('y', 'population').style('stroke', '#000');chart.point().scale('color', { palette: 'spectral' }).encode('x', 'state').encode('y', 'population').encode('shape', 'point').encode('color', 'age');chart.render();
说明:
data,包含地区、年龄以及人口;transform 方法中使用了 groupX 类型的数据转换,按 x channel 对数据进行分组,'y' 和 'y1' 分别取最小值和最大值;x channel 的值进行聚合,计算出每个 state 的 population 折线长度;encode 方法将分组后的数据映射到图表的 x 和 y 轴上进行点状渲染。