JSF和Date Axis Renderer

时间:2014-07-04 10:29:27

标签: jsf jqplot

我有一个线图,我在这里添加了一个图表系列,它在x轴上显示日期,在y轴上显示单位。

首次在图表上填充数据。

但是当我尝试在线图中添加另一个系列时,x轴上的日期不会改变。它采用早期图表系列的值,这意味着x轴不会更改新日期。请帮助

第一张图表系列
该系列绘制了具有不同日期值的第一行

ChartSeries goldenSource = new ChartSeries();
goldenSource.setLabel(selectedPriceException.getIssue().getPref_iss_nme());
List<HistoricalPriceLineChart> list=new ArrayList<HistoricalPriceLineChart>();
list=new GenerateDummyValues().generateStart();
for(int iSize=0;iSize<list.size();iSize++)
{
    goldenSource.set(DateUtil.dateConversion(list.get(iSize).getPrc_tms()),list.get(iSize).getUnit_cprc());
}
lineModel.addSeries(goldenSource);

generateStart()方法返回时间戳格式为HistoricalPriceLineChart且大十字格式为prc_tms的{​​{1}}列表

unit_cprc方法将timestamp转换为sql Date

第二张图表系列
本系列绘制具有不同日期值的第二行

dateConversion

调用xhtml文件

ChartSeries goldenSource1=new ChartSeries();
List<HistoricalPriceLineChart> list=new ArrayList<HistoricalPriceLineChart>();
list=new GenerateDummyValues().generate();
for(int iSize=0;iSize<list.size();iSize++)
{
     goldenSource1.set(DateUtil.dateConversion(list.get(iSize).getPrc_tms()),list.get(iSize).getUnit_cprc());
}
lineModel.setTitle("Historical Prices(Weekly)");
goldenSource1.setLabel(selectedPriceException.getIssue().getPref_iss_nme());
lineModel.addSeries(goldenSource1);

自定义扩展程序功能

<p:lineChart id="historicalPrices" value="#{priceExceptionDetailsController.lineModel}" title="#{priceExceptionDetailsController.lineModel.title}" yaxisLabel="Prices" xaxisLabel="Dates" legendPosition="nw" minY="0" extender="customExtender" />

我使用了primefaces的chart.js中提供的function customExtender() { this.cfg.axes = { xaxis : { renderer : $.jqplot.DateAxisRenderer, rendererOptions : { tickRenderer:$.jqplot.CanvasAxisTickRenderer }, tickOptions : { angle: -50,fontFamily:'Arial',fontSize:'12px' } }, yaxis : { rendererOptions : { tickRenderer:$.jqplot.CanvasAxisTickRenderer }, tickOptions: { formatString :'%#.2f',fontFamily:'Arial',fontSize:'12px' } } }; this.cfg.axes.xaxis.ticks = this.cfg.categories; } 。日期在x轴上缩放,y轴也缩放,但图表上没有绘制图表表示没有发生线图。但是,当我从DateAxisRendererDateAxisRenderer中移除tickRendererxAxis时,图表会使用所需的值进行绘制。请帮助...

0 个答案:

没有答案