我正在尝试用2行创建一个JQ Plot.第一行每小时都有第1天的数据,第二行是每小时数据的第2行.当我使用这两行创建图表时,我希望在第二行的顶部显示一行来显示每小时数据比较.但我在图表上看到这两条线彼此相邻.
我在这里有样品
请让我知道如何调整图表选项以在另一行之上显示一行.谢谢.
这是我的代码:
<html>
<head>
<script src="http://www.jqplot.com/deploy/dist/jquery.min.js"></script>
<script src="http://www.jqplot.com/deploy/dist/jquery.jqplot.min.js"></script>
<script src=""></script>
<link class="include" rel="stylesheet" type="text/css" href="http://www.jqplot.com/deploy/dist/jquery.jqplot.min.css" />
<script class="include" type="text/javascript" src="http://www.jqplot.com/deploy/dist/plugins/jqplot.cursor.min.js"></script>
<script class="include" type="text/javascript" src="http://www.jqplot.com/deploy/dist/plugins/jqplot.dateAxisRenderer.min.js"></script>
<script class="include" type="text/javascript" src="http://www.jqplot.com/deploy/dist/plugins/jqplot.logAxisRenderer.min.js"></script>
<script class="include" type="text/javascript" src="http://www.jqplot.com/deploy/dist/plugins/jqplot.canvasTextRenderer.min.js"></script>
<script class="include" type="text/javascript" src="http://www.jqplot.com/deploy/dist/plugins/jqplot.canvasAxisTickRenderer.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
line1 = [["6/22/2009 10:00",425.32], ["6/22/2009 11:00",424.84], ["6/22/2009 12:00",417.23], ["6/22/2009 13:00",390],
["6/22/2009 14:00",393.69], ["6/22/2009 15:00",392.24], ["6/22/2009 16:00",369.78], ["6/22/2009 17:00",330.16], ["6/22/2009 18:00",308.57],
["6/22/2009 19:00",346.45], ["6/22/2009 20:00",371.28], ["6/22/2009 21:00",324.7]];
line2 = [["6/23/2009 10:00",325.32], ["6/23/2009 11:00",324.84], ["6/23/2009 12:00",217.23], ["6/23/2009 13:00",190],
["6/23/2009 14:00",593.69], ["6/23/2009 15:00",292.24], ["6/23/2009 16:00",369.78], ["6/23/2009 17:00",330.16], ["6/23/2009 18:00",308.57],
["6/23/2009 19:00",446.45], ["6/23/2009 20:00",241.28], ["6/23/2009 21:00",624.7]];
var plot1 = $.jqplot('chart1', [line1,line2], {
title: 'XYZ, Inc.',
series: [{
label: 'XYZ, Inc.',
neighborThreshold: -1
}],
axes: {
xaxis: {
renderer:$.jqplot.DateAxisRenderer,
tickRenderer: $.jqplot.CanvasAxisTickRenderer,
tickOptions: {
angle: -30
}
},
yaxis: {
renderer: $.jqplot.LogAxisRenderer,
tickOptions:{ prefix: '$' }
}
},
cursor:{
show: true,
zoom: true
}
});
});
</script>
</head>
<body>
<div id="chart1" style="height:200px; width:600px;"></div>
</body>
</html>?
Run Code Online (Sandbox Code Playgroud)
我为这个问题苦苦挣扎.
解决方案是定义第二个x轴,我们将其命名为x2axis.
然后在系列配置中,指定您的一个系列将使用第二个x轴.
var plot1 = $.jqplot('chart1', [line1,line2], {
title: 'XYZ, Inc.',
series: [{
label: 'primary series',
neighborThreshold: -1,
xaxis: 'xaxis'
}, {
label: 'comparative series',
xaxis: 'x2axis'
}],
axes: {
xaxis: {
renderer:$.jqplot.DateAxisRenderer,
tickRenderer: $.jqplot.CanvasAxisTickRenderer,
tickOptions: {
angle: -30
}
},
x2axis: {
renderer:$.jqplot.DateAxisRenderer,
tickRenderer: $.jqplot.CanvasAxisTickRenderer,
tickOptions: {
angle: -30
}
},
yaxis: {
renderer: $.jqplot.LogAxisRenderer,
tickOptions:{ prefix: '$' }
}
},
cursor:{
show: true,
zoom: true
}
});
Run Code Online (Sandbox Code Playgroud)
如果您的数据集具有不同的长度,则还有其他问题需要解决.有关更多详细信息,请查看我关于该主题的博客文章.
干杯!