选择地理要素时,在表格中显示数据

时间:2016-08-25 14:07:35

标签: d3.js

早上好 Phil Pedruco的http://bl.ocks.org/phil-pedruco/7557092就是我的问题的反面。我很好奇如何点击​​一个地理位置,就像一个爱尔兰郡,并在表中突出显示相应的行。或者更好的是,只显示包含县信息的一行。感谢您的帮助 - 可爱的工作。

1 个答案:

答案 0 :(得分:0)

首先在d3.csv回调之外进行行声明,因为我们需要在click函数中访问它:

var g = svg.append("g"), rows;

在行上设置活动类以指示它们将可见:

// create a row for each object in the data
            rows = tbody.selectAll("tr")
                    .data(data)
                    .enter()
                    .append("tr")
                    .attr('class', 'active');

在click函数中,我们从所有行中删除活动类,然后获取与所选县相对应的行并在其上设置活动类:

d3.selectAll('tr.active').classed('active', false);
        rows.filter(function(r){
            return r.County === d.properties.name;
        })
        .attr('class', 'active');

在重置时,我们可以将活动类添加回所有行以使其可见:

d3.selectAll('tbody tr').attr('class', 'active');

结果如下:http://bl.ocks.org/ckothari/96248a1cf4efff934600c1d1f1e6d9b4