1

我有一个 jsD3 区域图形,数据包含某些指标的每日值,很多天我都有相同的值,所以当值上升或下降时,我的图形在某些点有峰值,而日期的水平线是相同的。如何仅用圆圈突出显示“峰值”(当数据与前几天不同时,增加或减少)?

如果我为相同的数据渲染圆圈,它们会为具有相同值的日期重复一个接近另一个的日期。

例如考虑这个样本:http ://bl.ocks.org/mbostock/3883195但使用这个数据:

date    close
14-May-14   10
15-May-14   10
16-May-14   12
17-May-14   12
18-May-14   10
19-May-14   10
20-May-14   10
21-May-14   10
22-May-14   28
24-May-14   39
25-May-14   39
26-May-14   49
27-May-14   49
28-May-14   59
28-May-14   48
30-May-14   49

这是渲染的图表: 在此处输入图像描述

我只想突出显示值的变化,所以结果图表是这样的: 在此处输入图像描述

4

1 回答 1

0

我想这已经很晚了,但我最近一直在研究类似的事情:

d3.select('#chart1 svg').selectAll("circle.nv-point")        
   .data(testdata[0].values)                                                                 
.filter(function(d) {return d.y > 20000; })
    .style("fill-opacity",1);

以上是我到目前为止一直在使用的,它突出显示所有值大于 20000 的点(当然这对你来说会有所不同)并使这些点可见。

希望这对某些人有所帮助,我是 d3 的新手,并且一直在尝试找到与您类似的问题的答案。

于 2014-07-23T18:04:28.670 回答