Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更新D3中的图例名称_Javascript_D3.js_Coffeescript_Legend_Nvd3.js - Fatal编程技术网

Javascript 更新D3中的图例名称

Javascript 更新D3中的图例名称,javascript,d3.js,coffeescript,legend,nvd3.js,Javascript,D3.js,Coffeescript,Legend,Nvd3.js,目前,我在d3上。当我试图更新d3中的图例名称时,它会更新名称,但在删除旧名称后会留下一个空格 如果您看到我将测试公式2更新为测试公式4的图像,d3删除了测试公式2并将其更新为测试公式4,但在测试公式1和3之间留有一个空格。我张贴了我的代码以供参考。数据是图表上显示的数据 svgData = svg.select('g.data').selectAll('g.datum').data data, (d)-> d.key newData = svgData.enter() .appe

目前,我在d3上。当我试图更新d3中的图例名称时,它会更新名称,但在删除旧名称后会留下一个空格

如果您看到我将测试公式2更新为测试公式4的图像,d3删除了测试公式2并将其更新为测试公式4,但在测试公式1和3之间留有一个空格。我张贴了我的代码以供参考。数据是图表上显示的数据

svgData = svg.select('g.data').selectAll('g.datum').data data, (d)-> d.key
newData = svgData.enter()
  .append 'g'
  .classed 'datum', true
legends = newData.append 'g'
  .classed 'legend-entry', true
  .attr 'opacity', 1
  .on 'click', hidden.toggle
legends.append 'circle'
  .attr 'r', 2
  .attr 'cx', 1
  .attr 'stroke-width', 1
  .attr 'fill', (d)-> scales.color(d.key)
  .attr 'stroke', (d)-> scales.color(d.key)
legends.append 'text'
  .attr 'x', 5
  .attr 'y', 2.5
  .attr 'font-size', 7
  .text (d)-> d.key
legends = svg.selectAll('g.legend-entry')
try
 entryWidth = _.memoize((d)-> d3.select(d).node().getBBox().width)
 legends.attr 'transform',  (d, i)->"translate(#{width-
  2.5*d3.sum(legends[0].slice(0, i+1), entryWidth)} #{gutters.top-10}) scale(2)"
catch err
  console.warn 'problem placing legends; '+err.message`