这种不错的D3.js散射图高光效果是如何实现的
How is this nice D3.js scattergraph highlighting effect achieved?
我喜欢这个散点图在你把鼠标悬停在圆圈上时突出显示圆圈的方式:http://novus.github.com/nvd3/examples/scatterWithLegend.html
但是那里有很多代码(看起来作者已经定义了他/她自己的标准库),我无法确切地弄清楚效果是如何实现的。
它与.hover
类和stroke-width
属性有关吗?
我想在我自己的散点图上实现相同的效果,尽管我使用的是圆圈而不是路径,所以这可能是不可能的。
在示例中,效果似乎是从第 136 行分散实现的.js。
不过,仅突出显示单个圆圈要容易得多,并且不需要该示例所做的所有其他内容。您需要做的就是向圆圈添加一个mouseover
处理程序并(例如)增加stroke-width
。那看起来像
d3.selectAll("circle").data(...).enter()
.append(...)
.classed("circle", true)
.on("mouseover", function() { d3.select(d3.event.target).classed("highlight", true); })
.on("mouseout", function() { d3.select(d3.event.target).classed("highlight", false); });
我假设一个CSS类highlight
定义了样式。或者,您可以只使用(在此示例中)CSS 类circle:hover
,而无需事件处理程序。
相关文章:
- 如何使用动画实现纸张推车
- 客户端服务器REST API captcha实现
- 如何实现此布局
- Meteor忘记了密码的实现
- 使用Native Sockets在Android中实现WebSockets
- 在样板文件中实现Ajax
- instanceof是如何在JavaScript中实现的
- 如何正确实现Jquery多选小部件
- 实现一个建立在google.com之上的自定义搜索引擎
- 多个组件是如何实现的
- window.location使用jquery mobile实现chrome跳转
- 如何在OpenERP中实现网络摄像头
- Node.js使用Series函数(模式?)实现流控制时出现意外结果
- javascript加密实现,包括可信否认
- 实现比较方法的最佳实践是什么;s的比较类型是在运行时选择的
- 如何让程序员在javascript中实现正确的回调
- 如何使用自定义辅助对象(handler)实现嵌套的每个循环
- AngularJS智能表全局配置实现
- Expressjs/AngularJS:实现req-flash后出错
- Java' Rhino实现实现了哪个JavaScript (ECMAScript)版本(更新策略是什么?)