d3.js - 如何在 nivo 折线图上实现该功能?
问题描述
我正在尝试从 nivo 折线图 ( https://nivo.rocks/line ) 中实现此功能,其中当我将光标放在图表上时,工具提示始终出现在图表上,并且工具提示始终出现在一个点旁边。使工具提示始终出现并且工具提示位置之间的转换很容易,但我不明白它如何计算最接近我的指针的点,我已经查看了源代码,但我在这里有点不知所措,我是绘制一个完整的空白,任何帮助将不胜感激,如果您可以展示一些具有此功能的源代码的演示,那将是一个很大的帮助。
解决方案
它使用d3-delaunay计算 Voronoi 图,以便找到最近的点。
voronoi = d3.Delaunay
.from(data, d => x(d.x), d => y(d.y))
.voronoi([0, 0, width, height])
您可以在官方Learn D3 文档中找到该技术的展示。
推荐阅读
- javascript - 为什么 Safari Content Blocker 在我的网站上单击时会阻止此重定向?
- spring-cloud-config - 如何以编程方式更新 Spring Cloud Config 客户端上的属性
- android - Android BluetoothAdapter.LeScanCallback onLeScan 方法在 BluetoothLeScanner 工作时未调用
- android - Android:在通知栏关闭时,视图在状态栏下调整大小。如何禁用调整大小?
- vue.js - 如何让 vue DevTools 自动提交 vuex 突变?
- javascript - AWS 扩大认知用户
- c++ - 二进制加法从左到右携带
- python-3.x - 嵌套循环中未定义的全局变量
- jestjs - Vuetify Jest 测试简单
- reactjs - 具有相对路径部署的 React Router