梦入琼楼寒有月,行过石树冻无烟

D3 布局

布局(layout)是 D3 中最为重要的概念之一,其中他的作用就是进行一个数据的转换,以及进行分别进行计算图形的位置和形状的关系,他总共提供了饼布局、力布局、弦布局、树布局、捆布局、直方布局、矩阵树布局七种常用布局

ID DA
饼布图(Pie) 饼布图主要用于方便计算出饼图或圈内的弧线开始和结束的角度,如果没有 Layout,那通过 弧生成器也可以实现,但通过饼布图会更加的方便且更加智能
力布图 (Force) 通过物理模拟的方式将力导向图更加灵活的实现位置的简单控制
弦布图(Chord) 弦图所示的内容为一组实体或数据之间的关系,并通过使用不同的弧线之间画出二次被塞尔曲线,将关系表述在一张弦图中
树布图(Tree) 树布图主要通过使用莱因戈尔德-蒂尔福德算法来产生一个简洁的树状节点,来展示层级结构
捆布图(Bundle) 通过使用丹尼-霍尔登分层捆图的实现,将每个输入的连接来计算出一条路径,然后路径分别被不同的路径穿过,也就是说捆布图的主要作用就是计算链接路径
直方布局(Histogram) 直方布图主要用于展示数据分布
矩形树布局(Treemap) 矩形树布局由Ben Shneiderman在1991年提出,将一块矩形区域进行切割多次,来达到层级的效果

还有一种在 D3 极为不同的布局就是 层次布局,层次布局也被称之为分层布局,他是一种抽象的布局,不可以直接进行使用,但是他允许在不同的分层布局中共享节点,以他为中心分出了:

ID DA
Cluster 簇实体构成的树状图
Pack 使用递归圆填充法来创建一个分层布局
Partition 将节点树递归划分成分辐射状或环状
Tree 将节点树整体放置
Treemap 使用递归空间划分显示节点树(虽然他不是分层布局,但捆绑布局可以同分层布局共同使用
⬅️ Go back