【问题标题】:How to highlight only certain coordinates in NVD3 line graph?如何仅突出显示 NVD3 折线图中的某些坐标?
【发布时间】:2015-05-04 20:39:27
【问题描述】:

谁能告诉我如何根据某些条件仅突出显示 NVD3 折线图中的某些坐标 比如如果 x 轴值大于 100,则突出显示该坐标。

请看图片:http://i.stack.imgur.com/AHJaK.jpg

已提出此问题或类似问题,但我没有看到任何答案。 提前致谢。

How to highlight a point on a Simple Line Chart in NVD3?

【问题讨论】:

  • NVD3 API 不允许您这样做。
  • 感谢 Lars 的评论,我可以只使用 D3 或任何其他 javascript 库吗?
  • 是的,您可以手动选择相关节点并应用必要的样式。
  • 感谢您的快速响应,任何示例将不胜感激。
  • 这是一个快速演示:jsfiddle.net/rgg7t/25

标签: javascript jquery d3.js nvd3.js


【解决方案1】:

NVD3 API 不允许您这样做,因此您必须“破解”它并突出显示您自己感兴趣的数据点。一般的做法是通过过滤数据为相关数据点创建圆圈:

var data = d3.select('#chart svg').datum();
        d3.select('.nv-groups')
            .selectAll("circle.myPoint")
            .data(data.filter(function(d) { return d.y > 3000; }))
            .enter().append("circle").attr("class", "myPoint")
            .attr("cx", function(d) { return chart.xAxis.scale()(d.x); })
            .attr("cy", function(d) { return chart.yAxis.scale()(d.y); })
            .attr("r", 5);

数据here中第一个系列的演示不完整。

【讨论】:

  • 我知道这个答案非常陈旧,试图让它完全按照你对第一个系列所做的那样,但对于所有定义为动态的系列。关于这个问题的更多信息:github.com/krispo/angular-nvd3/issues/… 有什么建议吗?谢谢。
猜你喜欢
  • 2021-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-02
相关资源
最近更新 更多