我在制作这个简单的事情时遇到了麻烦。我有这个循环向我的数组添加值:
for(i = 0; i < sections; i++){
datapointsUser[i] = [i+1, USER_NotesTaken[i]];
datapointsAverage[i] = [i+1, AVERAGE_NotesTaken[i]];
datapointsTopStudent[i] = [i+1, TOP_NotesTaken[i]];
}
然而,当我在jqplot上绘制图形时,数据点不会出现在x轴的整数集上。它们看起来大约在每个整数之间,尽管事实上我应该从这个循环给它们整数x值。为什么价值没有落在蜱上?我将把下面的代码放在我的图表中。谢谢!
$.jqplot('statgraph', [datapointsUser, datapointsAverage, datapointsTopStudent], {
axes: {
xaxis: {
numberTicks: sections,
tickInterval: 1,
},
yaxis: {
numberTicks: 16,
},
},
});
填写图表数组的代码:
// Dummy data
USER_NotesTaken = [3, 10, 4, 9, 5];
AVERAGE_NotesTaken = [7, 3, 1, 7, 9];
TOP_NotesTaken = [5, 8, 12, 13, 14];
// Sections variable is 5
for(i = 0; i < sections; i++){
datapointsUser[i] = [i+1, USER_NotesTaken[i]];
datapointsAverage[i] = [i+1, AVERAGE_NotesTaken[i]];
datapointsTopStudent[i] = [i+1, TOP_NotesTaken[i]];
}
答案 0 :(得分:0)
创建数据的循环使所有数据数组具有相同的刻度数(在此特定示例中为5)。 section
变量也与刻度数相同。您不需要将此信息“告诉”到图形引擎,因为它将自动从阵列生成它。
您不需要额外的xaxis
信息。从numberTicks
部分移除tickInterval
和xaxis
,您的刻度线将完美对齐。
这是一张对齐的图表,其中包含您提供的相同数据:
$.jqplot('statgraph', [[[1,3],[2,10],[3,4],[4,9],[5,5]], [[1,7],[2,3],[3,1],[4,7],
[5,9]], [[1,5],[2,8],[3,12],[4,13],[5,14]]],
{
axes: {
xaxis: {
//REMOVED EVERYTHING FROM HERE, YOU CAN REMOVE THE ENTIRE xaxis brackets.
},
yaxis: {
numberTicks: 16
}
}
});