Javascript X轴上的jQPlot日期刻度间隔为';行不通
请参阅所附图片。php中格式为Y-m-d的日期字符串绘制在x轴上。但正如你所看到的,日期越多,它就越是被压制。我想使用jqplot的tickInterval属性,但它就是不起作用 它完全忽略了时间间隔,只绘制了每一天的时间间隔。所以如果我有1000天的时间,它就完全不可读了Javascript X轴上的jQPlot日期刻度间隔为';行不通,javascript,php,date,jqplot,Javascript,Php,Date,Jqplot,请参阅所附图片。php中格式为Y-m-d的日期字符串绘制在x轴上。但正如你所看到的,日期越多,它就越是被压制。我想使用jqplot的tickInterval属性,但它就是不起作用 它完全忽略了时间间隔,只绘制了每一天的时间间隔。所以如果我有1000天的时间,它就完全不可读了 var plot1 = $.jqplot("analyse-bottom-left",[yValues],{ highlighter: { show: true, tooltipAxes: 'both
var plot1 = $.jqplot("analyse-bottom-left",[yValues],{
highlighter: { show: true, tooltipAxes: 'both' },
seriesDefaults:{
//renderer:$.jqplot.BarRenderer,
rendererOptions: {fillToZero: true},
},
axesDefaults:{
tickRenderer: $.jqplot.CanvasAxisTickRenderer,
},
legend: {
show: true,
placement: 'outsideGrid'
},
//series:seriesNames,
axes:{
xaxis:{
renderer: $.jqplot.CategoryAxisRenderer,
rendererOptions: { tickRenderer: $.jqplot.dateAxisRenderer },
ticks:xValues,
tickOptions:{
angle:30,
formatString:'Y-m-d'
},
tickInterval:'2 days'
},
yaxis:{
tickOptions: {formatString: '£%d'}
}
}
});
您的
xaxis
选项无效。您已将其设置为CategoryAxisRenderer
,然后尝试将刻度设置为DateAxisRenderer
。这将不起作用,因为axis本身需要使用DateAxisRenderer
试试这个:
xaxis:{
renderer: $.jqplot.DateAxisRenderer,
ticks: xValues,
tickOptions:{
angle: 30,
formatString: '%Y-%m-%d'
},
tickInterval: '2 days',
min: xValues[0]
}
我创建了一个示例来演示其用法。jqPlot有许多怪癖-在这种情况下,要使tickInterval正常工作,必须指定“min”值。忽略我放置的图像dateAxisRenderer,而不是dateAxisRenderer。但是,没有任何变化,间隔仍然是1天而不是2天。请不要编辑回复作者的答案。要么添加评论,要么编辑你的问题。它也不再绘制Y值了……奇怪。我手动添加了一些x和y值,但在图形上没有添加任何内容。如果我使用CategroyAxisRenderer,它工作得很好……您可以编辑答案来改进它们,而不是声明它们不工作。我现在正在测试你的代码…@NibbrWebDevelopment请查看我答案的更新并检查JSFIDLE。