小编san*_*neo的帖子

d3.js使用brush.clear()对我不起作用

在一个对象中,我存储了用d3.js制作的折线图,它可以刷选定区域.

单击折线图的选定部分外部时,将删除所选区域.

我想删除所选区域点击外部链接,例如.[重启]

不幸的是,即使我从折线图对象访问画笔对象,在画笔对象上调用clear()也不会删除选择.

如何使用外部折线图中的外部链接删除画笔选择?

我创建画笔:

this.brush = d3.svg.brush()
    .x(xScale)
    .on('brushstart', function() {
        lineChart.brushStart();
    })
    .on('brushend', function() {
        lineChart.brushEnd();
    });
Run Code Online (Sandbox Code Playgroud)

我创建刷牙区域:

this.brushArea = svg.append('svg:g')
    .attr('class', 'brush')
    .call(this.brush)
    .selectAll('rect')
    .attr('height', this.height);
Run Code Online (Sandbox Code Playgroud)

在外部链接上我输入clear()命令:

<span onclick="javascript: lineChart.brush.clear();">[reset]</span>
Run Code Online (Sandbox Code Playgroud)

它不会从折线图中删除选择.

请帮忙.

有关brush.clear()的文档效率不高.

拉丝区域图片:

http://i39.tinypic.com/2uxzprp.jpg

单击粉红色区域旁边的工作,单击[重置]链接不会.

马里乌什

javascript brush clear d3.js

5
推荐指数
3
解决办法
5621
查看次数

如何根据他的第二个子数组值获得最大的数组元素

我有一个JavaScript数组的数组:

[[-786, 2], [-783, 1], [-782, 5], [-781, 1], [-779, 2], [-778, 1], [-775, 1], [-774, 1], [-773, 1], [-771, 2], [-769, 1], [-767, 1], [-766, 1], [-763, 2], [-760, 2]]
Run Code Online (Sandbox Code Playgroud)

如何根据子数组中第二个元素的值获得最大元素?

在上面的情况下,我想得到元素:

[-782, 5]
Run Code Online (Sandbox Code Playgroud)

因为5是所有子阵列中最大的第二个值.如果有多个具有较大第二个值的子数组,我想得到第一个.

马里乌什

javascript arrays d3.js

5
推荐指数
1
解决办法
260
查看次数

如何在使用时间刻度的情况下在d3 js中设置画笔范围?

使用brush.extent([val1,val2])刷涂时遇到问题

关于文档:https://github.com/mbostock/d3/wiki/SVG-Controls当我设置brush.extent([val1,val2])时,如下所示:

var xScale = d3.scale.linear()
    .domain(data)
    .range([0, 500]);

var brush = d3.svg.brush()
    .x(xScale)
    .on('brushstart', function() {
        this.brushStart();
    })
    .on('brushend', function() {
        this.brushEnd();
    })
    .extent([100, 300]);
Run Code Online (Sandbox Code Playgroud)

它将在xAxis上显示从100到200的拉丝区域(刷子可见并且在右侧位置).

不幸的是,当我使用d3.time.scale()时,它根本不起作用:

var xScale = d3.time.scale()
    .domain(data)
    .range([0, 500]);

var brush = d3.svg.brush()
    .x(xScale)
    .on('brushstart', function() {
        this.brushStart();
    })
    .on('brushend', function() {
        this.brushEnd();
    })
    .extent([100, 300]);
    // or
    // .extent(['2013-08-01T00:00:00Z', '2013-08-10T23:59:59Z']);
    // or
    // .extent(['2013-08-01 00:00:00', '2013-08-10 23:59:59']);
    // or even
    // .extent([new Date(2013, 8, 1, 00, 00, 00), new …
Run Code Online (Sandbox Code Playgroud)

javascript brush d3.js

3
推荐指数
1
解决办法
4203
查看次数

标签 统计

d3.js ×3

javascript ×3

brush ×2

arrays ×1

clear ×1