我正在尝试使用crossfilter在地图上显示相对较小的.csv
文件。
这是网站的live version,出于开发目的,我在localhost
上运行相同的代码。
当我使用this file时,( 3037 行)一切都运行良好,但是当我切换到a file just flightly larger( 3,871 行)时崩溃。
我想也许这与我的数据中的胭脂&
字符有关,但那不是它!
任何人都可以找出问题所在吗?
它与尺寸有关吗?
它不认为可能是 - 因为我有一个更大的文件和crossfilter工作得很好。
我真的看不出这两个文件之间有什么实质性区别!
答案 0 :(得分:2)
您正在定义这样的尺寸:
var countries = data.dimension(function (d) {
return d["Country"];
});
问题几乎可以肯定是数据集中的某个位置,其中一个维度访问器返回undefined
值。这打破了维度访问者must always return naturally ordered values的规则。您应该对维度访问器进行少量更改,并始终返回相同类型的值。对于字符串:
var countries = data.dimension(function (d) {
return d["Country"] ? d["Country"] : "";
});
对于数字:
var countries = data.dimension(function (d) {
return d["Country"] ? d["Country"] : 0;
});
您使用的确切访问者取决于您的数据结构,但希望这会有所帮助。我确定在您添加的其他记录中,您在某处有一些空字段。