我正在使用一个双轴堆叠条形图(ADF组件),它使用一个包含x轴标签和要在图形中显示/堆叠的值的对象列表。
我对ADF和EJB比较陌生,所以如果这个问题对你们中的任何人来说都是初级的,我想提前道歉。
我应该提一下,我使用的是JDeveloper 11.1.1.5
我很难从变量中检索要分配给条形图属性的值,该条形图是我试图在JSF页面上显示的。
我已经简要总结了下面的逻辑,以供参考。
数据/列表从以下类数据控件中检索:
public class ActivityChart {
private Double axisScale;
public ActivityChart() {
super();
axisScale = 0.0;
}
public List<ActivityDTO> getActivityDetail(List<String> businessUnits) {
List<ActivityDTO> returnNewList = new ArrayList<ActivityDTO>();
List<TransactionDTO> dataList = new ArrayList<TransactionDTO>();
TransactionSessionBean transBean = lookupTransactionSessionBean();
if (businessUnits != null && !businessUnits.isEmpty()){
dataList = transBean.getActivityData(SystemUtil.getCurrentUser(), businessUnits);
returnNewList = processTransactions(dataList);
axisScale = calcAxisScale(returnNewList);
}
return returnNewList;
}
...TransactionDTO对象基本上是entity对象的镜像,用于存储来自查询的db事务的字段。ActivityDTO对象包含一个字符串值(x轴标签)和条形图所需值的3个双精度值。
我尝试做的是动态设置两个y轴的比例(我使用的是双轴堆叠条形图),因为自动计算的值没有对齐。
现在,我已经用特定的轴值硬编码了条形图的两个相关元素:
<dvt:y1Axis axisMaxAutoScaled="false" axisMaxValue="100.0"/>
<dvt:y2Axis axisMaxAutoScaled="false" axisMaxValue="100.0"/>我想要用于Y轴的值被计算并存储在上面类中的"axisScale“变量中。
真的不知所措,不知如何继续前进。
将非常感谢您提供的任何指导/指导。
谢谢,卡里姆
发布于 2012-11-29 21:02:22
为axisScale添加一个getter并重新生成数据控件。将axisScale的绑定添加到您的页面中,然后将其用作最大值。
pageDef:
<attributeValues IterBinding="ActivityChartIterator" id="axisScale">
<AttrNames>
<Item Value="axisScale"/>
</AttrNames>
</attributeValues>页面:
<dvt:y1Axis axisMaxValue="#{bindings.axisScale.attributeValue}" axisMaxAutoScaled="false"/>
<dvt:y2Axis axisMaxValue="#{bindings.axisScale.attributeValue}" axisMaxAutoScaled="false"/>https://stackoverflow.com/questions/13610168
复制相似问题