我有一个Web服务,它在一个数组中发送日期值(对于x轴)。它在另一个数组中发送y轴值。
是否可以让jqPlot创建一个包含2个此类数组的图表。文档似乎表明这是可能的。
我知道在一个数组中合并日期和系列值。想避免组合2个阵列的额外处理。
此jsFiddle http://jsfiddle.net/abhivm/HmnmH/1/显示示例代码。任何人都可以看看,让我知道如何做到这一点?
jsFiddle今天早上返回错误,所以在下面发布jQuery代码。
$(document).ready(function() {
var dateValues = ["01/15/2012", "01/17/2012", "01/18/2012", "01/19/2012"];
var dailyValues = [219, 73, 73, 146];
plot2 = $.jqplot('chart', [dailyValues], {
axes: {
xaxis: {
renderer: $.jqplot.DateAxisRenderer,
ticks: dateValues
}
}
});
});
由于 ABHI
答案 0 :(得分:1)
我无法找到jqPlot接受你想要如何定义输入的方法(ticks选项似乎只适用于数字)。我很好奇“避免额外处理”的评论。使用jQuery可以很简单:
$.map(dateValues,
function(val,idx){
return [[val,dailyValues[idx]]];
}
);
将两个数组“合并”为点对。
答案 1 :(得分:0)
日期轴的'同一日期的多个刻度'可以通过包含以下代码片段来解决:
xaxis: {
label: "Whatever you name it",
renderer: $.jqplot.DateAxisRenderer,
min:dateVal[0],
max:dateVal[dateVal.length-1],
tickInterval: '1 day',
请在xaxis:
下包含min,max和tickInterval,而不是tickOptions:
下。
在我的例子中,我在数组dateVal中有日期值,其中第0个元素是x轴的最小日期值,最后一个元素是最大日期值。如果您愿意,可以对日期值进行硬编码。
我希望这会有所帮助。