Javascript D3.JS:在二维绘图中使绘制线成为静态wrt轴

Javascript D3.JS:在二维绘图中使绘制线成为静态wrt轴,javascript,d3.js,plot,Javascript,D3.js,Plot,我是D3的初学者,对它知之甚少。 我目前正在尝试使用D3在图形上绘制一条2D线。我已经成功地绘制了直线,添加了轴,甚至添加了缩放功能 我一直致力于将线铰接到y轴,这样您就不能只单击它并向左或向右移动它(目前,如果您要运行JSFIDLE,您可以单击它并移动绘制的线)。我仍然想放大或缩小。但它仍应与y轴铰接。请让我知道这是否澄清了我的问题。 谢谢 链接到JS fiddle: 代码 添加此.on(“mousedown.zoom”,null)以禁用平移: var myChart = d3.selec

我是D3的初学者,对它知之甚少。 我目前正在尝试使用D3在图形上绘制一条2D线。我已经成功地绘制了直线,添加了轴,甚至添加了缩放功能

我一直致力于将线铰接到y轴,这样您就不能只单击它并向左或向右移动它(目前,如果您要运行JSFIDLE,您可以单击它并移动绘制的线)。我仍然想放大或缩小。但它仍应与y轴铰接。请让我知道这是否澄清了我的问题。 谢谢

链接到JS fiddle:

代码

添加此
.on(“mousedown.zoom”,null)
以禁用平移:

 var myChart = d3.select('body').append('svg')
    .attr('id', 'graph')
    .style('background', '#E7E0CB')
    .attr('width', width + margin.left + margin.right)
    .attr('height', height + margin.top + margin.bottom)
    .append('g')
    .attr('transform', 'translate(' + margin.left + ', ' + margin.top + ')')
    .call(zoom)
        .on("mousedown.zoom", null);//disable panning

工作代码

嘿,谢谢你的回复。还有,我怎样才能放大x轴并移除y轴的缩放?他肯定想继续平移吗?如果你不能平移,缩放就没有用……我认为如果我禁用y缩放,图形看起来就不正确。
 var myChart = d3.select('body').append('svg')
    .attr('id', 'graph')
    .style('background', '#E7E0CB')
    .attr('width', width + margin.left + margin.right)
    .attr('height', height + margin.top + margin.bottom)
    .append('g')
    .attr('transform', 'translate(' + margin.left + ', ' + margin.top + ')')
    .call(zoom)
        .on("mousedown.zoom", null);//disable panning