D3 Focus + Context via Brushing不显示散点图

时间:2014-09-02 04:34:00

标签: javascript d3.js

我正在尝试复制this Focus+Context via Brushing示例。我包含相同的布局,但是使用散点图而不是线/面积图。

我开始处理this示例,我发现它结合了区域图和散点图。但是,当我废弃区域图时,我失去了变焦/聚焦功能。

我的最后一步(迄今为止不成功)是使画笔(底部的小焦点条)实际响应主面板(在画笔中选择较小的时间段时调整/放大)。画笔按原样调整轴,但我只是无法使画笔实际调整/缩放主散点图上的点。我不是试图在画笔中绘制任何东西 - 会有很多点,所以保持刷子的灰色背景,没有点是好的。

这是我的小提琴:http://jsfiddle.net/fuqzp580/3/

旁注:我不能完全按照我使用d3.csv的方式使用jsfiddle,所以我用虚拟数据编写了一个略有改动的版本,而不是使用d3.csv。但是,我添加了d3.csv代码(已注释掉),以防万一可能导致我的问题。

我是d3的新手,所以欢迎任何指示或想法!

1 个答案:

答案 0 :(得分:1)

这是一个更新的小提琴,用于缩放主面板中各点的点:http://jsfiddle.net/henbox/3uwg92f8/1/

你非常接近,我只做了3次小改动:

首先,取消注释function brushed()中用于选择点

的代码

其次,全局定义mydots(因为您只在initialize()内执行,并且需要在此范围之外使用它)。在第55行添加了这个:

var mydots = focus.append("g");

最后(也是最重要的),我改变了xMap的定义

xMap = function(d) { return x2(d.time); } 

xMap = function(d) { return x(d.time); } 

刷牙时,会更新x比例,而不是x2