d3.js实现图形缩放平移


Posted in Javascript onDecember 19, 2019

本文实例为大家分享了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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
FireFox与IE 下js兼容触发click事件的代码
Nov 20 Javascript
jQuery动态添加的元素绑定事件处理函数代码
Aug 02 Javascript
Jquery事件的连接使用示例
Jun 18 Javascript
javascript 实现map集合
Apr 03 Javascript
javascript入门教程基础篇
Nov 16 Javascript
详解Webwork中Action 调用的方法
Feb 02 Javascript
JavaScript lodash常见用法系列小结
Aug 24 Javascript
jquery 属性选择器(匹配具有指定属性的元素)
Sep 06 Javascript
Angular2管道Pipe及自定义管道格式数据用法实例分析
Nov 29 Javascript
javaScript强制保留两位小数的输入数校验和小数保留问题
May 09 Javascript
详解vue2.0 资源文件assets和static的区别
Nov 27 Javascript
Three.js实现3D机房效果
Dec 30 Javascript
微信小程序批量上传图片到七牛(推荐)
Dec 19 #Javascript
echarts实现折线图的拖拽效果
Dec 19 #Javascript
Vue中使用Lodop插件实现打印功能的简单方法
Dec 19 #Javascript
Echarts实现单条折线可拖拽效果
Dec 19 #Javascript
Webpack设置环境变量的一些误区详解
Dec 19 #Javascript
Echarts实现多条折线可拖拽效果
Dec 19 #Javascript
js判断一个对象是数组(函数)的方法实例
Dec 19 #Javascript
You might like
分割GBK中文遭遇乱码的解决方法
2013/08/09 PHP
PHP取余函数介绍MOD(x,y)与x%y
2014/05/15 PHP
PHP和Mysql中转UTF8编码问题汇总
2015/10/10 PHP
ThinkPHP使用Ueditor的方法详解
2016/05/20 PHP
PHP hex2bin()函数用法讲解
2019/02/25 PHP
SeaJS入门教程系列之使用SeaJS(二)
2014/03/03 Javascript
原生js的弹出层且其内的窗口居中
2014/05/14 Javascript
JQuery复制DOM节点的方法
2015/06/11 Javascript
win7下安装配置node.js+express开发环境
2015/12/06 Javascript
jQuery实现TAB选项卡切换特效简单演示
2016/03/04 Javascript
详细谈谈javascript的对象
2016/07/31 Javascript
关于JavaScript限制字数的输入框的那些事
2016/08/14 Javascript
JavaScript中ES6字符串扩展方法
2016/08/26 Javascript
对vue.js中this.$emit的深入理解
2018/02/23 Javascript
小程序转发探索示例
2019/02/19 Javascript
深入理解基于vue-cli的webpack打包优化实践及探索
2019/10/14 Javascript
vue中v-for循环选中点击的元素并对该元素添加样式操作
2020/07/17 Javascript
[45:15]Optic vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.24
2018/08/25 DOTA
Python聚类算法之凝聚层次聚类实例分析
2015/11/20 Python
Django异步任务之Celery的基本使用
2019/03/23 Python
python3.7环境下安装Anaconda的教程图解
2019/09/10 Python
Django异步任务线程池实现原理
2019/12/17 Python
python每5分钟从kafka中提取数据的例子
2019/12/23 Python
python logging.info在终端没输出的解决
2020/05/12 Python
Python使用Excel将数据写入多个sheet
2020/05/16 Python
python中numpy数组与list相互转换实例方法
2021/01/29 Python
css3设置box-pack和box-align让div里面的元素垂直居中
2014/09/01 HTML / CSS
详解如何使用rem或viewport进行移动端适配
2020/08/14 HTML / CSS
Baby Tulai澳大利亚:美国婴儿背带品牌
2018/10/15 全球购物
电子信息工程专业推荐信
2014/02/14 职场文书
科技节口号
2014/06/19 职场文书
企业挂职心得体会
2014/09/10 职场文书
2015年保洁工作总结范文
2015/04/28 职场文书
2015年音乐教学工作总结
2015/07/22 职场文书
新学期新寄语,献给新生们!
2019/11/15 职场文书
Pandas自定义选项option设置
2021/07/25 Python