## 图形属性
图形属性对应视觉编码中的视觉通道,是 G2 语法元素非常重要和灵活的一部分,不同的几何标记拥有自己的图形属性。G2 中支持的图形属性有下面几种:
1. position:位置,二维坐标系内映射至 x 轴、y 轴;
2. color:颜色,包含了色调、饱和度和亮度;
3. size:大小,不同的几何标记对大小的定义有差异;
4. shape:形状,几何标记的形状决定了某个具体图表类型的表现形式,例如点图,可以使用圆点、三角形、图片表示;线图可以有折线、曲线、点线等表现形式;
5. opacity:透明度,图形的透明度,这个属性从某种意义上来说可以使用颜色代替,需要使用 'rgba' 的形式,所以在 G2 中我们独立出来。
## 图形属性声明语法
在 G2 中,我们这样定义图形属性的映射语法。
首先需要明确一点:**图形属性是属于每一个几何标记 geom(Geometry) 的**,所以我们先要声明几何标记,然后再在该几何标记对象上进行图形属性的映射,代码如下:
~~~js
chart.<几何标记>().<几何属性>(字段[, 回调函数);
~~~
语法示例:
~~~js
//point()是几何标记 position('a*b')和color() 是几何属性
chart.point().position('a*b').color('c');
chart.interval().position('a*b').color('c', (cValue) => {
if (cvalue === 'fail') {
return 'red';
}
return 'green';
});
~~~