2012-02-16 90 views
0

我想创建Jqplot条形图和在像创建多维数组遇到困难多维数组jqplot条形图

var plot2 = $.jqplot('chart2', [ 
    [[2,1], [4,2], [6,3], [3,4]], 
    [[5,1], [1,2], [3,3], [4,4]], 
    [[4,1], [7,2], [1,3], [2,4]]], 

我的数据是一个HashMap内的HashMap是喜欢

{software={low=1,high=5, medium=4}, harware={low=3,high=3,medium=8},network{low=3,high=3,medium=8}} 

如何在上面的多维数组中解释我的数据。我尝试使用JavaScript拼接方法,但它不工作的方式,我无法比较我的jsp变量与JavaScript变量,它变得混乱,我不能发布在这里。所以这是更好的,如果我在java本身创建这个数组,并将其传递给我的jsp页面。请任何人都介绍一下,什么是实现这种格式的最佳方式。

回答

1

这里的数据是作为一个javascript对象发送的。你可以把它作为一个JsArray像下面

public JsArray<?> push(String[] labels, double[] y) 
{ 
    JsArray<JsArrayMixed> Data = JavaScriptObject.createArray().cast(); 
    for (int i = 0; i < y.length; i++) 
    { 
     JsArrayMixed series = JavaScriptObject.createArray().cast(); 
     series.push(dateLabels[i]); 
     series.push(y[i]); 
     Data.push(series);`enter code here` 
    } 
    return Data; 
} 

所以,你可以直接传递数据jqplot功能与选项和图表DIV ID

请原谅我.. 出于某种原因,JsArray的推法只是推即使我们嵌套了像数组一样的小JsArryMixed,也可以使用逗号作为右手边的值。我想你可以试试JSON数组并将它作为一个JavaScript对象传递给jqplot图表。