HTML元素语义化标签CSS选择器继承属性核心模块背景图像清除浮动定位BFC使用 attr()展示 tooltipJavaScript基础知识实用技巧内存管理JS 思维导图学习 JS 的 8 张思维导
顺晟科技
2022-09-15 12:32:40
28
继 Learn D3: Data 第四篇,只是英文翻译,可修改代码的部分用静态图片替代了,想要实时交互请阅读原文。
原文:Learn D3: Scales版本:Published Mar 24, 2020OriginMy GitHub在 D3 数据图形所有工具中,最基本的是比例尺,它将数据的抽象维度映射到可视变量。
为了尝试,看看这些小(但美味!)水果的数据集。
我们通常认为维度是空间的,比如三维空间中的位置,但抽象维度不一定是空间的。它可能是定量的,例如上面每个水果的 count
。或者它可能是名义上的,比如一个 name
。
在 Semiology of Graphics 中,Jacques Bertin 描述了点和线等图形标记如何“表示差异(≠)、 相似性(≡)、 量化顺序(Q)或非量化顺序(O),并且组、层次或垂直移动的表示”可以使用位置、大小、颜色等。这些图形标记属性是我们的视觉变量。
与许多可视化一样,下面的条形图将两个抽象维度映射到两个可视变量:name
维度映射到条形图的 y 位置,而 count
维度映射到 x 位置。这些映射由下面的 x 和 y 比例尺实现。
(请随意编辑代码,看看会发生什么!)
D3 比例尺有多种类型。使用哪一种取决于抽象维度(定量的还是象征性的?)和视觉变量(位置或颜色?)。这里 x 是线性比例尺,因为 count
是定量的,条形长度应该和数值成比例,而 y 是分段比例尺,因为 name
是象征性的,并且条形厚厚的。
每个比例尺都是通过从抽象数据(domain
)到可视变量(rang
)成对进行配置的。例如,x-domain 的下限值(0)映射到 x-range 的下限值(图表的左边缘),domain
的上限值(最大计数)映射到 rang
的上限值(右边缘)。
对于线性比例尺,domain
和 rang
是连续的间隔(从最小到最大)。对于分段比例尺,domain
是离散值的数组(
22
2022-09
15
2022-09
15
2022-09
14
2022-09
14
2022-09
13
2022-09