科学图表演示

力导向网络

三十六节点按弹簧与斥力在浏览器中迭代排布,滑块可调节斥力。

这张图把网络画成一组互相作用的粒子。节点分成观测、变量、模型三类,每类十二个;边在页面加载时由固定种子随机生成,因此每次打开连接关系都相同。相连的节点被弹簧拉向自然长度,所有节点之间还有斥力,整体再被轻微的重力收向画面中心。

弹簧对一对节点的作用可以写成

Fijspring=k(∥rij∥−L)r^ij\mathbf{F}_{ij}^{\mathrm{spring}}=k(\|\mathbf{r}_{ij}\|-L)\hat{\mathbf{r}}_{ij}

其中 rij\mathbf{r}_{ij} 是从 ii 指向 jj 的向量,LL 是弹簧原长,r^ij\hat{\mathbf{r}}_{ij} 是单位方向。距离大于 LL 时力沿连线收缩,小于 LL 时则把两端推开。ECharts 在浏览器里做与此类似的弹簧—斥力迭代,而不是把坐标事先算死。拖动「斥力」可改变节点互相推开的强度;也可以直接拖拽节点,或滚轮缩放、按住平移。

图表加载中…