我想使用jQPlot并将轴渲染为一系列日期值 – jQPlot的原始包可以是这里的字体:
http://www.jqplot.com/docs/files/plugins/jqplot-dateAxisRenderer-js.html
问题是这样的:
a)xaxis不会从左侧开始,也会显示我不想看到的值
b)右边同样的问题,有更多不需要的数字
c)我想在xaxis上进行所有日子1 2 3 4 5 …不是31 3 6 9 …
d)是否可以设置一种偏移到底部(只是一点点……)
截图:
我的代码:
$.jqplot('chartdiv',[
[
['2012-08-01',0],['2012-08-02',['2012-08-03',['2012-08-04',['2012-08-05',['2012-08-06',['2012-08-07',1],['2012-08-08',['2012-08-09',6],['2012-08-10',['2012-08-11',['2012-08-12',['2012-08-13',['2012-08-14',['2012-08-15',['2012-08-16',['2012-08-17',['2012-08-18',['2012-08-19',['2012-08-20',['2012-08-21',['2012-08-22',['2012-08-23',['2012-08-24',['2012-08-25',['2012-08-26',['2012-08-27',['2012-08-28',['2012-08-29',['2012-08-30',['2012-08-31',0]
]
],{
title: 'Downloadstatistik',axes: {
xaxis: {
renderer: $.jqplot.DateAxisRenderer,tickOptions: {
formatString: '%#d',tickInterval: '1 month'
},pad: 1.0
},yaxis: {
tickOptions: {
formatString: '%.0f'
},min: 0
}
}
});
最佳答案
首先,您应该尝试将tickInterval设置为“1天”:)
在此之后,诀窍是根据日期数组的第一个和最后一个值设置xaxis min和max.
这是一个例子:
var timeline = [[
['2012-08-01',0]
]];
var plot = $.jqplot('chartdiv',timeline,tickOptions: { formatString: '%#d' },tickInterval: '1 day',min: timeline[0][0][0],max: timeline[0][timeline[0].length-1][0]
},yaxis: {
tickOptions: { formatString: '%.0f' },min: 0
}
}
});
另外我认为不需要垫.
编辑(添加了新的jsFiddle):
您可以在此处测试此示例代码:http://jsfiddle.net/JhHPz/4/