<html>
<head>
<meta charset="utf-8">
<title>树状图</title>
<style>
.node circle {
fill: #fff;
stroke: steelblue;
stroke-width: 1.5px;
}
.node {
font: 12px sans-serif;
}
.link {
fill: none;
stroke: #ccc;
stroke-width: 1.5px;
}
</style>
</head>
<body>
<script src="http://d3js.org/d3.v3.min.js"></script>
<script>
var width = 500,
height = 500;
var tree = d3.layout.tree()
.size([width, height-200])
.separation(function(a, b) { return (a.parent == b.parent ? 1 : 2); });
var diagonal = d3.svg.diagonal()
.projection(function(d) { return [d.y, d.x]; });
var svg = d3.select("body").append("svg")
.attr("width", width)
.attr("height", height)
.append("g")
.attr("transform", "translate(40,0)");
d3.json("city_tree.json", function(error, root) {
var nodes = tree.nodes(root);
var links = tree.links(nodes);
console.log(nodes);
console.log(links);
var link = svg.selectAll(".link")
.data(links)
.enter()
.append("path")
.attr("class", "link")
.attr("d", diagonal);
var node = svg.selectAll(".node")
.data(nodes)
.enter()
.append("g")
.attr("class", "node")
.attr("transform", function(d) { return "translate(" + d.y + "," + d.x + ")"; })
node.append("circle")
.attr("r", 4.5);
node.append("text")
.attr("dx", function(d) { return d.children ? -8 : 8; })
.attr("dy", 3)
.style("text-anchor", function(d) { return d.children ? "end" : "start"; })
.text(function(d) { return d.name; });
});
</script>
</body>
</html>
相关推荐
D3.js的V5版本-Vue框架中使用(第八章) ---树状图
一. api简介d3.tree(),创建一个树状图生成器d3.tree().size(),定义树的大小d3.hierarchy(),层级布局,需要和tree生成器一起使用,来得到绘制树所需要的节点数据和边数据node.descendants()得到所有的节点,已经经过转换的数据node.links(),得到所有的边,已经经过转换的数据二.Vue中使用*点击节点可展开收缩<template l...
d3 tree 实现双向动画树总结
使用d3.js 实现双向tree,并实现节点展开收起动画。使用svg 绘制。
【昇腾】用MindIE(服务化方式)拉起glm4-9b-chat模型问题解决
【昇腾】用MindIE拉起glm4-9b-chat模型问题解决: LLMInferEngine failed to init LLMInferModels ERR: Failed to init endpoint! Please check the service log or console output. Killed make sure the folder's owner has execute permission.
D3 绘制 树图(tree) 笔记
绘制一个树形图分为四部 选中页面设置的svg绘制区域的宽高 添加g元素 设置位置 生成树状布局,设置尺寸 对角线生成器 请求数据 获取节点数组和连线数组 绘制连线 绘制节点 给节点添加圆圈设置半径 给节点添加文本 设置文本样式 位置 本地连接json会出现跨域问题 需要用http-server启动本地服...
音视频开发—H264相关概念和压缩原理详解(GOP、宏块、帧内压缩、帧间压缩)
本文讲述了H264相关概念和原理——GOP概念,SPS与PPS,帧内压缩原理,帧间压缩原理,解释了什么是运动补偿,什么运动矢量等等概念
C语言新手必练:10个实战小项目带你快速上手(附完整代码)
本文为C语言初学者精选10个实战项目,从基础的温度转换器到高级的迷宫求解算法,涵盖输入输出、条件判断、循环控制、数组操作等核心知识点。每个项目配有完整代码和详细解析,帮助新手通过实践掌握编程思维,特别适合刚学完语法但缺乏实战经验的学习者。
D3最新版本实现组织型tree结构,包含拖拽、缩放、平移、折叠、异步加载节点自定义渲染等功能
import { PureComponent } from 'react' import { D3 } from "@weapp/ui" let d3: any = null; //辅助函数: 递归获取tree的节点数量 function getCount(parent: any) { var count = 0; if (Array.isArray(parent.children)) { count += parent.children.length; parent.chil..
GXHT40温湿度传感器:I2C通信与CRC校验实战解析
本文详细解析GXHT40温湿度传感器的I2C通信协议与CRC校验机制,涵盖硬件连接、时序控制、数据读取及加热功能应用。通过实战案例分享优化技巧与异常处理,帮助开发者提升嵌入式系统中传感器数据的准确性与可靠性。
【D3.js 学习总结】13、D3布局-树状图
d3.layout.tree() 树状图( Tree )用于表示层级、上下级、包含与被包含关系,其布局的用法与集群图几乎完全相同,本章简单通过两个图的对比来讲述两种图表之间的不同之处。 树状图 集群图 查看在线演示 ...
【GEE数据库】WRF常用数据集总结
【GEE数据库】WRF常用数据集总结
YOLOv8轻量化模型瘦身术:深度解析与实战LAMP剪枝 YOLOv8(2021)
YOLOv8模型LAMP剪枝技术解析与实战 本文深入探讨了LAMP剪枝技术在YOLOv8目标检测模型中的应用。针对深度学习模型部署面临的资源限制问题,LAMP剪枝通过最小化L2失真和层自适应稀疏度分配,实现了高效模型压缩。相比传统幅度剪枝的"一刀切"方法,LAMP创新性地将剪枝建模为优化问题,定义LAMP分数来衡量权重重要性,自动确定各层最佳剪枝率。文章从理论基础出发,详细解析了LAMP的核心数学公式和算法流程,并提供了完整的YOLOv8移植实战指南,包括代码结构、剪枝步骤和微调策略。通
如何快速实现交互式树状图?React D3 Tree 完整指南
React D3 Tree 是一个基于 React 和 D3.js 构建的强大树状图组件,能够帮助开发者轻松创建交互式、可定制的数据可视化树形结构。无论是展示组织架构、文件目录还是复杂的层级关系,这个开源工具都能提供直观且高效的解决方案。 ## 为什么选择 React D3 Tree? 在数据可视化领域,树状图是呈现层级数据的黄金标准。React D3 Tree 结合了 React 的组件化优...
【100%通过率】华为od机试C卷【特殊的加密算法】Python 实现
有一种特殊的加密算法,明文为一段数字串,经过密码本查找转换,生成另一段密文数字串。规则如下1.明文为一段数字串由0-9组成2.密码本为数字0-9组成的二维数组3.需要按明文串的数字顺序在密码本里找到同样的数字串,密码本里的数字串是由相邻的单元格数字组成,上下和左右是相邻的,注意:对角线不相邻,同一个单元格的数字不能重复使用。
超实用D3.js实战:零基础掌握旭日图与树状图可视化
你还在为复杂层级数据发愁?产品分类、组织架构、文件系统的层级关系是不是总让你眼花缭乱?本文将用最通俗的语言,带你一步到位掌握D3.js中两种顶级分层数据可视化方案——树状图(Tree)和旭日图(Sunburst),从此让层级数据一目了然。读完本文你将获得:分层数据转换技巧、两种布局完整实现代码、3类场景最佳选择指南,以及5个实战优化技巧。 ## 数据准备:从表格到层级结构 所有分层可视化的第一
计算机实战分享3:森林火灾预测分析可视化机器学习预测-完整数据代码-可直接运行
计算机实战分享3:森林火灾预测分析可视化机器学习预测-完整数据代码-可直接运行
汉书HE8,好用的汇编代码编写工具
汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大
使用D3.js——初步使用
使用D3.js 公司项目有这样一个需求,客户发展的用户关系通过树状图形式展示, 该等级是无限级别,用传统的文件数结构展示不够直观 于是使用D3的树状图结构 一个可缩放的树状图 效果图: 实现代码如下: https://gitee.com/hotsuitor/learn_d3js.git 参考地址:https://observablehq.com/@d3/collapsible-tree ...
efm32 入门.pdf
本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。
Vue.D3.tree:如何用这个组件让复杂数据一目了然?终极指南
Vue.D3.tree是一个基于D3.js布局的Vue组件,专门用于展示树状结构数据。无论你是处理简单的组织结构图还是复杂的网络拓扑,这个组件都能让复杂的数据关系变得清晰直观。作为数据可视化的强大工具,Vue.D3.tree组件帮助开发者和数据分析师轻松创建交互式树形图。 ## 🎯 什么是Vue.D3.tree? Vue.D3.tree是一个开源的Vue组件,它结合了Vue.js的响应式特性
如何在React中构建专业的树状图?React D3 Tree终极指南
React D3 Tree是一个基于React和D3.js的开源组件库,专门用于在网页中展示层次化数据的交互式树状图。它结合了React的组件化优势和D3.js强大的数据可视化能力,让开发者能够快速构建组织结构图、文件系统浏览器、决策树等复杂的数据层次可视化应用。 ## 快速开始:5分钟创建你的第一个树状图 ### 安装依赖 ```bash npm install react-d3-tree
探索Vue.D3.tree:构建动态数据可视化的新工具
是一个强大的开源项目,它将流行的前端框架Vue.js与数据可视化库D3.js结合,提供了创建交互式树状图的强大功能。这个项目旨在简化复杂的数据结构展示,让开发者能够更轻松地构建出富有吸引力且易于理解的界面。 ## 项目简介 Vue.D3.tree是由David Desmaisons开发的一个 Vue.js 模块,它利用了 D3.js 的强大图形绘制能力,为Vue应用提供了一种优雅的方式去显示和
如何在react-d3-tree中实现自定义节点样式?5个实用案例
react-d3-tree是一个强大的React组件,用于创建交互式D3树状图。本文将详细介绍如何在react-d3-tree中实现自定义节点样式,通过5个实用案例帮助你打造独特的树状可视化效果。 ## 1. 了解自定义节点的基本原理 在react-d3-tree中,自定义节点是通过`renderCustomNodeElement`属性实现的。这个属性允许你传入一个函数,该函数返回自定义的Re
从JSON到可视化:react-d3-tree数据结构最佳实践
react-d3-tree是一个强大的React组件,能够将JSON数据转换为交互式D3树状图可视化。本文将分享如何设计最优JSON数据结构,以及利用react-d3-tree实现数据可视化的实用技巧,帮助新手快速掌握这一工具。 ## 为什么选择react-d3-tree? react-d3-tree将D3.js的强大可视化能力与React的组件化思想完美结合,让开发者能够轻松创建交互式树状图
开源项目 `tree-chart` 使用教程
开源项目 tree-chart 使用教程 1. 项目的目录结构及介绍 tree-chart/ ├── src/ │ ├── components/ │ │ ├── TreeChart.js │ │ └── ... │ ├── styles/ │ │ ├── main.css │ │ └── ... │ ├── index.js │ └── ... ├...
D3实现树状图(vue+v5)
树状图 树状图用于表示层级、上下级、包含与被包含关系 新知识 d3.hierarchy() 层级布局,需要和tree生成器一起使用,来得到绘制树所需要的节点数据和边数据。 d3.hierarchy().sum() 后序遍历,官方API的解释如下: d3.tree() 创建一个树状图生成器 d3.tree().size() 定义树的大小 d3.tree().separation(...
React D3 Tree 交互式树状图开发终极指南
React D3 Tree 是一个强大的 React 组件库,专门用于创建交互式的 D3.js 树状图。它完美结合了 React 的组件化特性和 D3.js 的数据驱动文档功能,让开发者能够轻松地在 React 应用中嵌入功能丰富的树状可视化图表。 ## 5分钟快速体验 要开始使用 React D3 Tree,首先需要通过 npm 安装该包: ```bash npm install reac
vue d3 svg tree树状图
用的是d3.v3 版本 展示没有问题,细节有问题。 采用的是自己的json,调接口的没有总结,太麻烦了。 下面地址是原声的,支持提示框可复制文字,并且节点之间不会重叠,tree.size 改成 tree.nodeSize 即可 https://blog.youkuaiyun.com/czy279470138/article/details/88419831 <style> ...
3887



被折叠的 条评论
为什么被折叠?



