You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AnyLogic中柱状图未按条件显示数据的问题求助

AnyLogic柱状图条件数值未生效的排查与解决

我在AnyLogic中创建了柱状图,为数值区域设置了如下条件代码:

time(MONTH) == scenario.ModelStopTime?(double)staticData.DynamicgymActualCapacityPercentage/100
:(double) delayGym.size() / scenario.Cpar_GymCapacity

假设ModelStopTime = 12,按逻辑第12个月应显示(double)staticData.DynamicgymActualCapacityPercentage/100的值,但实际未生效。

排查与解决方法

  • 修正时间匹配逻辑:time(MONTH)返回的是带小数的连续时间值(比如第12个月对应的时间范围是11.0到12.0),直接和整数12判等大概率不匹配。改成基于整数月份的判断:
    floor(time(MONTH)) == scenario.ModelStopTime ? ((double)staticData.DynamicgymActualCapacityPercentage)/100 : (double)delayGym.size()/scenario.Cpar_GymCapacity
    
    或者判断是否进入第12个月及以后:time(MONTH) >= scenario.ModelStopTime
  • 验证目标变量值:在模型运行到第12个月时,通过AnyLogic调试窗口查看staticData.DynamicgymActualCapacityPercentage的实时值,确认它已被正确赋值(非null、非0)。
  • 确保图表更新时机:如果模型在第12个月直接停止,柱状图可能来不及更新对应数值。可以在scenario.ModelStopTime时间点添加一个事件,调用柱状图的update()方法强制刷新。
  • 明确类型转换优先级:给类型转换和除法运算加括号,避免因运算符优先级导致的计算错误,比如((double)staticData.DynamicgymActualCapacityPercentage)/100。

内容的提问来源于stack exchange,提问作者Aqeel Tariq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 14:52:05