Javascript 未捕获类型错误:。筛选器不是函数

Javascript 未捕获类型错误:。筛选器不是函数,javascript,d3.js,data-visualization,Javascript,D3.js,Data Visualization,我读过。但我不知道为什么函数不起作用 var bubble = d3.pack() .size([diameter, diameter]) .padding(2); var root = d3.hierarchy({"children": data.values}); var node = svg.selectAll(".node") .data(bubble(root) .filter(function(d) {return !d.children;

我读过。但我不知道为什么函数不起作用

var bubble = d3.pack()
    .size([diameter, diameter])
    .padding(2);

var root = d3.hierarchy({"children": data.values});

var node = svg.selectAll(".node")
    .data(bubble(root)
        .filter(function(d) {return !d.children;}))
    .enter().append("g")
    .attr("class", "node")
    .attr("transform", function(d) {
        return "translate(" + d.x + "," + d.y + ")";
    });

在将数据传递给
pack()
函数之前,必须将其传递给
d3.hierarchy()
,该函数:

从指定的层次结构数据构造根节点

因此,考虑到您的数据对象:

var data = {
    //Hierarchical data here
};
您必须将其传递到
d3.hierarchy()

然后,您可以使用
气泡

.data(bubble(root)) 

编辑:由于您更改了问题的标题,问题现在清楚了:
bubble(root)
返回一个对象,不能在对象中使用。这是一个数组方法。

请粘贴你的
气泡
函数。粘贴@GerardoFurtadoLook查看更改,请@Баааааааааааааааааа。您不能在对象中使用
filter
,filter是一种数组方法:我使用了
array.prototype.slice.call(bubble(root))
,问题消失了,但出现了一个新的(.无法读取null的属性'ownerDocument'。你知道吗?很抱歉,我的ImportionProperty用于本身是文档的节点上,结果为null-找到它。但是,如果v3代码正确工作@Gerardofertado,此时如果没有a,就无法帮助你。另外,我建议你发布一个新问题,因为这个问题有c被绞死了很多次。
.data(bubble(root))