Javascript 在直线图上绘制矩形
我有一个简单的折线图 我想让用户在图形顶部绘制矩形,捕捉到网格线。请参见此处以获取可视示例: 我已经看过Highcharts和d3,但它们都没有一个允许用户在图形上“绘制”的工具Javascript 在直线图上绘制矩形,javascript,canvas,d3.js,charts,highcharts,Javascript,Canvas,D3.js,Charts,Highcharts,我有一个简单的折线图 我想让用户在图形顶部绘制矩形,捕捉到网格线。请参见此处以获取可视示例: 我已经看过Highcharts和d3,但它们都没有一个允许用户在图形上“绘制”的工具 在潜入API和/或用大量代码重新发明轮子之前,我希望有人以前已经实现了这一点(或类似的东西),或者可以为我指出正确的方向?从我使用Highcharts的经验来看,你完全可以在图表之上绘制。这只是一个你想怎么做的问题 我可以想出两种方法来实现这一目标: 在图表上画几个“虚拟”线系列,这将产生你想要的效果。这样做的好处是
在潜入API和/或用大量代码重新发明轮子之前,我希望有人以前已经实现了这一点(或类似的东西),或者可以为我指出正确的方向?从我使用Highcharts的经验来看,你完全可以在图表之上绘制。这只是一个你想怎么做的问题 我可以想出两种方法来实现这一目标:
showInLegend:false
),并防止用户与它们交互(enableMouseTracking:false
)renderer.rect
方法在图表中绘制矩形(请参阅)。以下是Highcharts API文档中的一个基本示例:您可以将columnRange系列与line结合使用
plotOptions: {
columnrange: {
pointPadding: 0,
groupPadding: 0,
borderWidth: 1,
borderColor: 'black'
}
},
legend: {
enabled: false
},
series: [{
type: 'line',
data: [
[12, -20],
[2, -10]
]
}, {
color: 'rgba(0,0,0,0)',
name: 'Temperatures',
data: [
[-9.7, 9.4],
[-8.7, 6.5],
[-3.5, 9.4],
[-1.4, 19.9],
[0.0, 22.6],
[2.9, 29.5],
[9.2, 30.7],
[7.3, 26.5],
[4.4, 18.0],
[-3.1, 11.4],
[-5.2, 10.4],
[-13.5, 9.8]
]
}]
例如:
对象的网格,并给每个对象一个鼠标向下
事件来改变其填充颜色。你的帖子对我的任务非常有帮助,谢谢。最终,它让我发现了Highcharts的插件,我根据自己的喜好对它进行了分叉和修改。啊,矩形的列范围也是一个很好的主意!谢谢你,@SebastianBochan。