我在捕获 NVD3 中 StackedAreaChart 上的一些数据时遇到问题。
我能够使用以下答案成功拦截点击事件: NVD3 Stacked Area Chart
但是,我需要更进一步。现在我已经拦截了该事件,我将返回一个如下所示的对象:
{
point: {key:"A Place", values:[], seriesIndex: 1},
pos: [479, 283],
series: "A Place",
seriesIndex: 1
}
对象的 pos 数组看起来最有希望 - 数组中的第一个元素显然是 x 坐标,第二个元素是 y 坐标。
我试图将这个数字通过管道传输到生成 x 轴值的同一函数中,以便为我提供我正在查找的 x 轴上的数据点。然而,我没有任何运气,我的办公 table 开始向我不断撞头的地方屈服。
任何人都知道我如何基本上向后走并将我返回的坐标通过管道传输到 d3 中可用的图表函数中以获得我如此渴望的 x 值吗?
最佳答案
要将坐标从屏幕坐标转换回输入,您需要首先使用转换它的比例。
您可以通过axis组件访问比例,然后可以在坐标上调用invert
。
这是一个例子:
var xDataPoint = chart.xAxis.scale().invert(xScreenCoord);
关于javascript - 捕获 X 轴值 NVD3 堆积面积图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25126029/