Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.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 - Fatal编程技术网

Javascript 仪表板的D3部分未显示

Javascript 仪表板的D3部分未显示,javascript,d3.js,Javascript,D3.js,我已经使用D3大约一年了,过去我制作的仪表盘没有问题。然而,这次我在路上遇到了一个相当奇怪的颠簸。我有一个带有topo JSON的地理仪表板,下面有一个水平条形图,可以在我的要点/方框中找到: 注意:您可能需要单击以查看全视图窗口,blocks网站似乎将iframe高度限制为500。(您可以忽略index.html以外的所有文件,其他文件只是源代码和我的tsv数据文件) 过去,我典型的仪表板技术是为仪表板的每个图形分配一个单独的div。然而,这里的问题是,在美国地图下应该有可见的单杠。然而,尽

我已经使用D3大约一年了,过去我制作的仪表盘没有问题。然而,这次我在路上遇到了一个相当奇怪的颠簸。我有一个带有topo JSON的地理仪表板,下面有一个水平条形图,可以在我的要点/方框中找到:

注意:您可能需要单击以查看全视图窗口,blocks网站似乎将iframe高度限制为500。(您可以忽略index.html以外的所有文件,其他文件只是源代码和我的tsv数据文件)

过去,我典型的仪表板技术是为仪表板的每个图形分配一个单独的div。然而,这里的问题是,在美国地图下应该有可见的单杠。然而,尽管做了很多修补,单杠并没有显示出来。我仍然以同样的方式附加它们——这在过去一直对我有效。所以基本上,我不知道为什么水平条形图没有显示出来

开发人员工具报告说根本没有错误——这很奇怪。我可以清楚地看出出了什么问题,因为我的仪表板少了一半

我在index.html中添加了注释,以指示代码中条形图部分的位置。具体来说,第159-228行

为了以防万一,从概念上阐明水平条形图“正在做什么”也可能有帮助。它应该从一个变量中附加rect,该变量将我解析的数据从最大值到最小值(我的tsv中的d.fxb)排序,并根据线性色标给出填充

更新

我已经关闭了样式调用,现在我正在排除其他错误。遗憾的是,我被代码中条形图部分的第一行卡住了。第160行。我已经更新了要点,为了便于参考,我将在此处包括相关行:

var values = data.fxb.sort(function(a, b) {
    return -(a - b);
});

var name_value_array = json.features.name;


var name_values = name_value_array.sort(function(a, b) {

    return -(a.value - b.value);

});
我得到一个错误,上面写着:“无法读取属性”排序“未定义的。据我所知,应该定义数组。这一次,我非常小心地确保所有东西都包含在适当的
)}
令牌中。我进行了三次检查,以确保这些行仍然被数据解析函数所包围。所以我不知道为什么会这样。我对条形图代码的底部有信心,所以如果有人能发现是什么阻碍了我,我将非常感激


谢谢

这并不能解决您所有的问题,但您未能关闭此功能

然后,您还会得到一个额外的
})(其中
样式
调用最终关闭)


有更多的错误,但这会吞噬它们,并且它们不会出现的原因。

这不会解决您所有的问题,但您无法关闭此项

然后,您还会得到一个额外的
})(其中
样式
调用最终关闭)


还有更多的错误,但这会吞噬它们,并且是它们不显示的原因。

var name\u values=name\u values.sort(…)
?我来自Python背景,允许这种类型的赋值。但是,是的,我也在那部分打了几根睫毛,至少没有任何错误。@ArashHowaida,这在JS中也很正常。请注意,原来的数组也发生了变异,不幸的是,在这种情况下,如果要避免这种影响,您必须首先克隆数组。我根据建议调整了数组分配,但是我收到了更新后提到的其他令人震惊的错误。
var name\u values=name\u values.sort(…)
?我来自Python背景,允许这种类型的赋值。但是,是的,我也在那部分打了几根睫毛,至少没有任何错误。@ArashHowaida,这在JS中也很正常。请注意,原始阵列也发生了变异,在这种情况下,很遗憾--如果要避免这种影响,您必须首先克隆阵列。我根据建议调整了阵列分配,但是我收到了更新后提到的其他令人震惊的错误。看得好,我知道一定有一个合理的解释。我会检查错误,并希望提供解决方案,使酒吧出现。否则,我可能会提供更多关于我的障碍的细节。谢谢你的回答。眼睛好,我知道一定有一个合理的解释。我会检查错误,并希望提供解决方案,使酒吧出现。否则,我可能会提供更多关于我的障碍的细节。谢谢你的回答。
.style("fill", function(d) {
  // Get data value
  var value = d.properties.fxb;
  if (value=='None') {
    return "#999999"
  }
  if (value) {
  //If value exists…
    return color(value);
  } else {
    //If value is undefined…
    return "#999999";
  }