决策树可视化指南:dTree 如何画出多父节点的数据树 📅 发布时间:2026/8/23 15:23:56 👁 浏览次数: 决策树可视化指南dTree 如何画出多父节点的数据树【免费下载链接】dTreeA library for visualizing data trees with multiple parents, such as family trees. Built on top of D3.项目地址: https://gitcode.com/gh_mirrors/dt/dTreedTree 是一个基于 D3.js 的开源库主打多父节点的数据树与决策树可视化一个节点能同时挂在多个父节点下普通树形图做不到的结构它接得住。家谱里的两段婚姻、组织里的双线汇报都能落到同一张图上。一句话看懂它是什么dTree 一句话定位把多父节点的数据树渲染成网页里可交互的 SVG。节点是 div连线是 SVG 路径画完还返回 resetZoom、zoomToNode 等函数供你操作视口。仓库自带的 demo 示例数据 是一份三代家谱跑通 demo 就能看到实际效果。它和普通树图差在哪单亲节点的树谁都画过那一个节点同时属于两个部门、传统树图画不下去的场景呢传统树图默认每个节点只有一个父节点遇到双线汇报只能二选一或者把人复制两份图就失真了。dTree 的做法允许一个节点同时挂在多个父节点下面每条关系用独立连线分开表达。家谱里它专门设了 marriage 关系节点两段婚姻就是两个节点孩子分别挂在对应线下。落到效果上一份 JSON 数组进去一棵连线完整、可缩放的数据树出来多父节点的分支不用靠人脑补。 3 分钟跑起来dTree 安装一行命令真正要留意的是依赖npm install d3-dtree # 或 yarn add d3-dtree它依赖 d3 v4 和 lodash v4页面里要先把这两个引入。不想装包可以走 CDN按顺序引入 lodash、d3 v4、dTree.min.js 三个脚本即可压缩文件就在 npm 包 d3-dtree 的 dist 目录里。下面是十四行的最小渲染示例div idgraph/div script srclodash.min.js/script script srcd3.v4.min.js/script script srcdTree.min.js/script script const data [{ name: Niclas, marriages: [{ spouse: { name: Iliana }, children: [{ name: James }] }] }]; dTree.init(data, { target: #graph, width: 1200, height: 800 }); /script配置项速查d3-dtree 配置项看起来不少常动的就这几项配置名作用默认值target挂载的 DOM 选择器#graphwidth / height画布宽高单位像素600 / 600debug控制台调试输出falsehideMarriageNodes隐藏婚姻关系小节点truemarriageNodeSize关系节点尺寸10nodeWidth节点基础宽度100选项传给 dTree.init 的第二个参数。要一次配全吗不用缺的项自动走默认值。它能替你做什么家谱再婚、重组家庭最容易把传统族谱糊成一团dTree 把每段婚姻拆成独立关系节点三代以上的关系层层展开不用拼多张图。组织架构汇报线交叉时同一个人可以同时出现在两个部门的树下。画一张开源组织架构图把部门当父节点、成员当子节点交叉关系原样呈现。决策树机器学习场景里决策树可视化常要面对分支多、层级深的分类模型。画完直接调 zoomToFit 看全貌再用 zoomToNode 缩到某条分支长路径不用截图拼接。 上手前先看这几点数据格式有要求吗传入的是 JSON 数组节点带 name关系写在marriages字段spouse 填配偶、children 填子女可嵌套任意代extra 放自定义数据回调里原样取回。拿不准就照着 demo 示例数据 抄结构。样式改 CSS 还是改 JS节点本质是 div数据里 class 字段挂上类名就能像写普通网页一样控外观连线、文字分别对应 styles 里的 linage 和 text 类名。换颜色、字号、圆角基本不用碰 JS。点击和右键怎么响应在 options.callbacks 里覆写 nodeClick、nodeRightClick参数带节点名和 extra 数据改节点显示的文字则覆写 textRenderer。默认实现都写在 src/dtree.js 里翻源码抄作业就行。从 demo 改起把数据换成你自己的一棵多父节点的数据树就出来了git clone https://gitcode.com/gh_mirrors/dt/dTree【免费下载链接】dTreeA library for visualizing data trees with multiple parents, such as family trees. Built on top of D3.项目地址: https://gitcode.com/gh_mirrors/dt/dTree创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考