antv-l7/dev-demos/gallery/scale/index.md

75 lines
3.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Scale 简介
Scale 度量是将地图数据值(数字、日期、类别等数据)转成视觉值(颜色、大小、形状)。尺度 Scale 是数据可视化的基本组成部分,因为它们决定了视觉编码的性质。 L7 目前支持连续、离散、枚举类型数据的Scale并支持位置、形状、大小和颜色编码的映射。
Range 和 domain 是 Scale 中非常重要的两个参数
- domain: 地图数据值的定义区间
- range视觉值的区间定义
不同Scale 的差异在于 domain->range 的转换方法的不同
| 数据类型 | 度量类型 |
| ---- | ---- |
| 连续 | linear、log、pow、time、quantize、quantile |
| 分类 | cat、timeCat |
| 常量 | identity |
在使用 `L7` 开发过程中默认情况下不需要进行度量的配置,因为 `L7` 代码内部已经根据数据的形式对度量进行了假设,其计算过程如下:
查看用户是否制定了对应字段的数据类型 `type`)
如果没有,判断字段的第一条数据的字段类型
如果数据中不存在对应的字段,则为 'identity'
如果是数字则为 'linear'
如果是字符串,判定是否是时间格式,如果是时间格式则为时间类型 'time',
否则是分类类型 'cat'
### Cat
Cat 指枚举类型,用于展示分类数据,比如农作物种植区分布图,水稻、玉米、大豆等不同类别需要映射为不同的颜色。
比如
domain = ['corn','rice',soybean']
range = ['red','white','blue']
三种作物会分别转成对应的颜色
### identify
常量度量 某个字段是不变的常量。
### Linear
线性是连续数据的映射方法,数据和视觉值是通过线性方法换算的。如数据值 1-100 线性映射到红到蓝的线下渐变色每个数字对应一个颜色
### Sequential
### quantize
相等间隔会将属性值的范围划分为若干个大小相等的子范围。相等间隔最适用于常见的数据范围,如百分比和温度。这种方法强调的是某个属性值相对于其他值的量
### quantile
每个类都含有相等数量的要素。分位数分类非常适用于呈线性分布的数据。分位数为每个类分配数量相等的数据值。不存在空类,也不存在值过多或过少的类。
由于使用“分位数”分类将要素以同等数量分组到每个类中,因此得到的地图往往具有误导性。可能会将相似的要素置于相邻的类中,或将值差异较大的要素置于相同类中。可通过增加类的数量将这种失真降至最低。
### threshold
他允许将域的任意子集(非统一段)映射到范围内的离散值。输入域仍然是连续的,并根据提供给域属性的一组阈值划分为多个切片。 range 属性必须有 N+1 个元素,其中 N 是域中提供的阈值边界数
手动设置间隔 Manual interval 手动设置分级分类区间,某些数据会有相应的业界标准,或者需要进行某种特殊的显示。如空气质量数据有严格数据分段标准
```
-1 => "red"
0 => "white"
0.5 => "white"
1.0 => "blue"
1000 => "blue
```
### diverging