d3.js实现图形缩放平移
作者:百宝袋时间:2026-10-23 13:57:10浏览:444
本文介绍了如何使用d3.js实现SVG图形的缩放和平移功能。通过定义缩放行为并绑定到SVG元素,用户可以交互地调整图形大小和位置。
d3.js实现图形缩放平移
本文分享了一段使用d3.js实现图形缩放和平移的具体代码示例,供读者参考。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>缩放操作</title>
</head>
<body>
<script src = "d3.js"></script>
<script>
var width = 400,
height = 400;
var circles =[{cx:150,cy:200,r:30},
{cx:250,cy:200,r:30}]
var svg = d3.select("body").append("svg")
.attr("width",width)
.attr("height",height)
//定义缩放函数
var zoom = d3.behavior.zoom()
.scaleExtent([1,10])//用于设置最小和最大的缩放比例
.on("zoom",zoomed)
//绘制
var g = svg.append("g")
.call(zoom)
g.selectAll("circle")
.data(circles)
.enter()
.append("circle")
.attr("cx", function (d) {
return d.cx
})
.attr("cy", function (d) {
return d.cy
})
.attr("r", function (d) {
return d.r
})
.attr("fill","black")
function zoomed(){
g.attr("transform","translate("+d3.event.translate+")scale("+d3.event.scale+")")
} //d3.event.translate 是平移的坐标值,d3.event.scale 是缩放的值。
</script>
</body>
</html>
以上就是本文的全部内容,希望这些内容能对各位的学习有所帮助,同时也欢迎大家多多支持本站。
作者最新文章
定制 Quill.js 主题样式:修改默认 CSS 与添加自定义类名
2026-11-04 11:21:35
混淆JS代码怎么在线反混淆并格式化阅读
2026-11-03 21:46:39
JS在线编辑器代码报错怎么调试?控制台使用技巧
2026-11-03 21:24:56
从 marked.js 旧版本升级到最新版:API 变更与迁移指南
2026-11-03 17:38:17
JS富文本编辑器Quill与代码编辑器CodeMirror的区别及应用场景
2026-11-03 16:52:09
