Javascript 如何使用jqplot绘制序列的子集?
我需要在同一张画布上画三个系列。该系列类似于:Javascript 如何使用jqplot绘制序列的子集?,javascript,jqplot,Javascript,Jqplot,我需要在同一张画布上画三个系列。该系列类似于: rec1 = [0, 0, 150, 200, 0 ]; rec2 = [60, 120, 179, 240, 300]; rec3 = [50, 100, 150, 200, 250]; 我使用下面的源代码来绘制这个系列 $.jqplot("chart", [rec1, rec2, rec3], { title: "", axesDefaults: { tickRenderer: $.jqplot.Can
rec1 = [0, 0, 150, 200, 0 ];
rec2 = [60, 120, 179, 240, 300];
rec3 = [50, 100, 150, 200, 250];
我使用下面的源代码来绘制这个系列
$.jqplot("chart", [rec1, rec2, rec3], {
title: "",
axesDefaults: {
tickRenderer: $.jqplot.CanvasAxisTickRenderer,
tickOptions: {
fontSize: '10pt'
}
},
seriesDefaults: {
rendererOptions: {
smooth: false
},
pointLabels: {
show: true,
ypadding: 10
},
showMarker: true,
lineWidth: 2
},
legend: {
show: true,
location: 'nw',
placement: "outside"
}
});
在rec1中,具有零值的元素将始终为零。我想在rec1中隐藏这些零值元素。有没有办法实现这一点?
将rec1设置为:
rec1 = [undefined, undefined, 150, 200, undefined]
将隐藏这些未定义的点,但会导致150和200的点标签出现在错误的位置,如图所示。
谢谢你的指导
不应使用“平面”阵列,而应使用二维阵列来放置点:
rec1 = [[3, 150], [4, 200] ]; // we defined 2 points with their (x, y) coordinates
rec2 = [60, 120, 179, 240, 300];
rec3 = [50, 100, 150, 200, 250];
我已经制作了一个JSFIDLE来展示这一点(我刚刚从您的示例中将点
[3,150]
移动到[3,90]
,以便您看到其标签的正确位置):不清楚,看起来不错@dfsq感谢您的回复,但我无法通过参考您提供的链接来帮助自己。您使用的是jqPlot的哪个版本?我也试过了,我也没有问题…@Samuelcailerie jqplot的1.0.8版。我不确定我的程序是否做错了什么。但我已经尽了最大的努力,非常感谢。我尝试了你发布的方法,它完全按照我想要的方式工作。