Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.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.js上的数据更改圆弧外半径_Javascript_D3.js_Chord Diagram - Fatal编程技术网

Javascript 基于d3.js上的数据更改圆弧外半径

Javascript 基于d3.js上的数据更改圆弧外半径,javascript,d3.js,chord-diagram,Javascript,D3.js,Chord Diagram,第一次使用,所以请原谅任何意外违反协议。我试着把形成D3生成的弦图外环的弧,转换成各种条形图,每组的弧有不同的外半径。我在D3文档中没有发现任何东西表明这是不可能的,但我还没有找到解决方案。棘手的部分似乎是获取一个函数来执行并从存储在其中的csv文件中检索相关编号,并相应地更改圆弧的外半径。以下是我到目前为止所做的(修改自“Andrew RP的Andrew的和弦示例”): 但当我运行该程序时,它不会显示外弧,并在浏览器的“开发人员”窗格中提供错误消息,说明它无法解析“d”,并显示它在outerR

第一次使用,所以请原谅任何意外违反协议。我试着把形成D3生成的弦图外环的弧,转换成各种条形图,每组的弧有不同的外半径。我在D3文档中没有发现任何东西表明这是不可能的,但我还没有找到解决方案。棘手的部分似乎是获取一个函数来执行并从存储在其中的csv文件中检索相关编号,并相应地更改圆弧的外半径。以下是我到目前为止所做的(修改自“Andrew RP的Andrew的和弦示例”):

但当我运行该程序时,它不会显示外弧,并在浏览器的“开发人员”窗格中提供错误消息,说明它无法解析“d”,并显示它在outerRadius(…)内执行函数时遇到问题。 任何帮助或建议都将不胜感激。
谢谢

这段代码不正确:

.outerRadius(innerRadius + function(d, i) {return cities[i].conservation;})
您正在尝试对函数的
内半径
+
引用进行求和。
函数(d,i){return cities[i].conservation;}
只是对该函数的指针引用,而不是函数调用。这个函数不是直接调用的,它只是作为参数传递给outerRadius,outerRadius稍后执行它。 在您的示例中,有一个名为
innerRadius+函数(d,i){return cities[i].conservation;}
。它们是不兼容的类型(innerRadius可能是整数,function(…是function类型),因此调用了method
.toString()
,您将字符串
“100function(d,i){return cities[i].conservation;}”
传递给.outerRadius,其中100是
innerRadius
变量的值。 代码应为:

.outerRadius(function(d, i) {return innerRadius + cities[i].conservation;})

这就解决了问题。非常感谢。我花了7个小时摆弄它,但我真的不了解D3以及整个链接的工作原理。你在推进医学研究方面做了一小部分,谢谢你。
.outerRadius(function(d, i) {return innerRadius + cities[i].conservation;})