在AnyLogic中,分布图是用于显示离散或连续随机变量的分布情况的。如果柱状图未显示,可以尝试以下解决方法:
通过代码指定柱状图的属性:首先,确保分布图的类型选择了“离散”或“连续”,然后在属性窗口中找到“柱状图”选项,并确保已启用。如果未启用,请启用它并重新运行模拟。
检查数据源:确保分布图的数据源正确设置。在属性窗口的“数据源”选项中,选择正确的数据源。如果使用Agent或Population的属性作为数据源,请确保该属性的值在模拟运行时是有效的。
检查数据格式:分布图的数据源可以是一维数组或集合。如果数据源是数组,请确保数组中的元素是正确的类型且不为空。如果数据源是集合,请确保集合中的元素是正确的类型。
以下是一个简单的示例代码,展示了如何创建一个包含柱状图的离散分布图:
import java.util.ArrayList;
import java.util.List;
public class Main extends Experiment {
public static void main(String[] args) {
Main main = new Main();
main.run();
}
public void run() {
AnyLogicDistributionChart chart = new AnyLogicDistributionChart(this, true, true);
chart.setChartType(ChartType.BAR);
chart.setTitle("Distribution Chart");
// 创建一个包含随机整数的数组作为数据源
List data = new ArrayList<>();
for (int i = 0; i < 100; i++) {
int randomValue = (int) uniform_discr(1, 10);
data.add(randomValue);
}
chart.setData(data);
chart.setNumberOfBars(10); // 设置柱状图的数量
show(chart);
}
}
这个示例将创建一个包含10个柱状图的离散分布图,每个柱状图表示1到10之间的随机整数的频率分布情况。在模拟运行时,将显示该分布图。请根据您的具体需求进行适当的修改和调整。