Javascript 使用投影线绘制简单图形

Javascript 使用投影线绘制简单图形,javascript,d3.js,svg,charts,highcharts,Javascript,D3.js,Svg,Charts,Highcharts,我需要为一个web项目绘制一个相当简单的图表 数据总是相同的,因此图形线不会改变。然而,我需要在图的顶部绘制2条投影线,突出显示图的某些方面。这些行将根据某些变量而变化。 以下是我努力实现的目标: 我查看了Chart.js、Chartist和其他一些库,但没有看到任何可以绘制我需要的投影线的示例 有人能给我指出一个可以实现这一点的库吗?你可以用highcharts实现它 我找到了一些几乎完全适合的示例,并对其进行了轻微修改: 下面是经过一段时间后设置“十字线”的呼叫: setTimeout(

我需要为一个web项目绘制一个相当简单的图表

数据总是相同的,因此图形线不会改变。然而,我需要在图的顶部绘制2条投影线,突出显示图的某些方面。这些行将根据某些变量而变化。 以下是我努力实现的目标:

我查看了Chart.js、Chartist和其他一些库,但没有看到任何可以绘制我需要的投影线的示例


有人能给我指出一个可以实现这一点的库吗?

你可以用highcharts实现它

我找到了一些几乎完全适合的示例,并对其进行了轻微修改:

下面是经过一段时间后设置“十字线”的呼叫:

setTimeout(function() {
    addCrosshair(3,14.5);
}, 1000);

setTimeout(function() {
    addCrosshair(2,5.7);
}, 2000);
代码中真正起作用的部分是:

function addCrosshair(x,y) {
chart.xAxis[0].addPlotLine({
    id: 'xPlotLine'+x,
    value: x,
    width: 1,
    color: '#C0C0C0'
});

chart.yAxis[0].addPlotLine({
    id: 'yPlotLine'+y,
    value: y,
    width: 1,
    color: '#C0C0C0'
});
}

通过下面的示例,使用D3实现了这一点

必须修改一些东西,比如工具提示的位置(也使用div,这样我也可以设置它们的样式),并在与图形路径相交的位置停止投影x线,等等

但以下是结果的快照:


查看nvd3示例非常感谢,但我花了一天的时间在D3中完成了这项工作,它似乎按照预期工作。