2014-09-02 58 views
0

我试图复制this Focus+Context via Brushing的例子。我包含相同的布局,但使用散点图而不是线/面积图。D3 Focus +上下文通过刷新不显示散点图

我开始关闭this示例我发现它将区域图和散点图组合在一起。但是,当我放弃区域图时,我失去了变焦/聚焦功能。

我最后一步(到目前为止不成功)是让画笔(底部的小焦点条)实际上对主面板做出响应(在画笔中选择较小的时间段时调整/放大)。画笔根据需要调整轴线,但我无法使画笔实际调整/缩放主散点图上的点。我不想在画笔中绘制任何东西 - 会有很多点,所以保持画笔灰色背景,没有点是好的。

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

旁注:我不能完全得到的jsfiddle与我使用d3.csv在上班的路上,所以我编写了以虚拟数据略有改动的版本代替使用d3.csv的。但是,我包括d3.csv代码(注释掉),以防万一这可能是我的问题的原因。

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

回答

1

这里有一个更新的拨弄点在主面板上的点放大:http://jsfiddle.net/henbox/3uwg92f8/1/

你是非常接近的,我只是做了3个小的变化:

首先,注释去掉,你已经有了代码其次,全球定义mydots(因为您只是在initialize()之内执行此操作,所以需要在此范围之外使用它)。添加了这个在线55:

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

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

​​

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

刷牙时,它的x规模得到更新,而不是x2

+0

明白了 - 谢谢! – ajb 2014-09-02 17:14:21

+0

@亨利,这是一个很好的答案。我想知道,如何编辑代码,使得点在穿过y轴时消失? – Shawn 2016-06-21 07:48:59