使用jqplot時,我必須創建2個系列的條形圖,並且每個都包含3個不同的值(類別)。問題是第一個值約爲50000,另外兩個約爲(-3) - (3)。因此,在繪製一張圖表時,只有2個欄可見。 我在想爲y軸使用LogRenderer,但它似乎根本沒有工作。最好的選擇是爲每個tickgroup(類別)設置不同的y軸,但是在搜索後我沒有找到任何方法來做到這一點。 (重要的是必須只有2個系列 - 這是日期比較,所以不可能改變系列中的內容)jqplot&barcharts中不同比例的條和Y軸
有誰知道如何做到這一點?或者還有沒有其他方式可以將所有數據顯示在一個圖表上(主要是使用條形圖)。
JS撥弄我的工作示例: http://jsfiddle.net/F5N4r/
標題:
<script type="text/javascript" src="https://bitbucket.org/armata007/jqplot/downloads/jquery.jqplot.min.js"></script>
<script type="text/javascript" src="https://bitbucket.org/armata007/jqplot/downloads/jqplot.barRenderer.min.js"></script>
<script type="text/javascript" src="https://bitbucket.org/armata007/jqplot/downloads/jqplot.canvasAxisTickRenderer.min.js"></script>
<script type="text/javascript" src="https://bitbucket.org/armata007/jqplot/downloads/jqplot.categoryAxisRenderer.min.js"></script>
<script type="text/javascript" src="https://bitbucket.org/armata007/jqplot/downloads/jqplot.enhancedLegendRenderer.min.js"></script>
<script type="text/javascript" src="https://bitbucket.org/armata007/jqplot/downloads/jqplot.logAxisRenderer.min.js"></script>
<div id="plot"></div>
代碼:
var s1 = [50000, 0.11, 2.3];
var s2 = [55000, -0.20, 1.4];
var ticks = ['category 1', 'category 2', 'category 3'];
var plot1 = $.jqplot('plot', [s1, s2], {
seriesDefaults: {
renderer: $.jqplot.BarRenderer,
rendererOptions: {
fillToZero: true
}
},
series: [
{
label: 'January 2012'},
{
label: 'February 2012'}
],
legend: {
show: true,
placement: "outside",
location: "s",
renderer: $.jqplot.EnhancedLegendRenderer,
rendererOptions: {
numberRows: 1
},
marginTop: "34px"
},
axes: {
xaxis: {
renderer: $.jqplot.CategoryAxisRenderer,
ticks: ticks
},
yaxis: {
//renderer: $.jqplot.LogAxisRenderer,
pad: 1.05,
tickOptions: {
formatString: '%d'
}
}
}
});
結果: http://www.roslaw.pl/pics/2012-11-29_18-56-55_835341x930andWndpnd.png
感謝