2015-05-10 55 views
0

我使用jqplot通过Primefaces,并已输入到条形图是这样的:条形图两个系列不同的日期/值的范围

Series 1: 
label: "Company 1" 
data: {"01-05-2015": 10, "06-05-2015": 3} 
Series 2: 
label: "Company 2" 
data: {"03-05-2015": 10, "06-05-2015": 3} 

当我通过这个数据为BarChartModel,我数据错误地绘制在图表上。

数据在第一个系列之后,因为Series 2Series 1日期之后绘制。我已经将数据转换为在顺序遵循得到图表精细得出:

Series 1: 
label: "Company 1" 
data: {"01-05-2015": 10, *"03-05-2015": 0*, "06-05-2015": 3} 
Series 2: 
label: "Company 2" 
data: { *"01-05-2015": 0* , "03-05-2015": 10, "06-05-2015": 3} 

通知*之间的数据项*。

此处有任何建议吗? (如果使用DateAxis有帮助?)

回答

0

当我没有使用DateAxis时,我遇到了与LinearChartModel相同的问题。 作为一种解决方法,我用所有可能的数据填充了我的系列,然后重新排列列表。 URG!

也应该使用BarChartModel。

使用DateAxis你只需要使用时间戳添加日期轴,像这样:

serie.set(new Date().getTime(), new Double(123)); 

或本

serie.set("2015-09-08", new Double(123)); 

把DateAxis在LineChartModel这样的:

DateAxis axis = new DateAxis("Data da inspeção"); 
linearModel.setZoom(true); 
linearModel.getAxes().put(AxisType.X, axis); 
linearModel.setExtender("linhaSetor"); 

并在extender.js中格式化您的日期:

function linhaSetor() { 
    this.cfg.axes.xaxis.tickOptions = { 
     show : true, 
     angle : 45, 
     formatString : '%d/%m/%y %Hh' 
    }; 
} 

您甚至不需要按顺序放置数据。

相关问题