我有2个点线系列,每个系列都有默认光标。默认光标沿系列数据(点)运行。我想要的是一个光标,可以在图表中的任意位置移动,而不仅限于序列数据。
谢谢你的提问。根据标签,我假设您正在使用LightningChart JS。
如果我正确理解了所需的行为,则希望将光标始终定位在用户鼠标上,并在结果表中显示已解决的最近数据点。
这可以通过Chart Marker来实现,它基本上是一个可以在应用程序代码中创建和定位的游标。
以下是有关如何执行以下操作的代码段:
听文档上的鼠标事件。
解决序列中最近的数据点。
将图表标记放置在任意位置。
const marker = chart.addChartMarkerXY()
document.addEventListener( 'mousemove', ( event ) => {
// Solve nearest data point.
const cursorPoint = chart.solveNearest( { x: event.clientX, y: event.clientY } )
// Translate mouse location to Axis.
const locationOnAxes = translatePoint(
chart.engine.clientLocation2Engine( event.clientX, event.clientY ),
chart.engine.scale,
{
x: chart.getDefaultAxisX().scale,
y: chart.getDefaultAxisY().scale
}
)
// Position Chart Marker, but override its location.
marker
.pointAt( cursorPoint )
// Override Cursor location to that of mouse location.
.setPosition( locationOnAxes )
} )
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句