我正在 Netlogo 中处理模型,但在理解如何设置“实验”时遇到问题。在我的模型中,我有一个矩阵,其中包含我感兴趣的所有值(总共 6 个),并且只要满足条件(每次杀死 X 只海龟时)都会更新矩阵,基本上捕获了那个时候的模型。矩阵中先前的值被清除,因此矩阵是 1x6,而不是 10000x6 矩阵,每个快照只更新一行。
我想做的是设置一个实验来运行我的模型数百次,每次收集这个矩阵以获得第一个 X 数量的快照或直到发生 Y 个刻度。但是我在实验设置中看不到这样做的方法?
这是可能的,还是我必须创建 100x6(100 个快照),然后以某种方式将该矩阵导出到 CSV?
我从未在 Netlogo 中设置过实验,因此这可能非常容易或完全不可能。
关于编程的一般问题:当你用C(或我想的任何语言)定义一个值时,编译器如何知道如何处理这个值?例如:
#define CountCycle 100000
Run Code Online (Sandbox Code Playgroud)
我假设CountCycle是一个"长整数"数据类型,但这只是一个假设.我想它也可能是a float,a double (不是最大int约为32k),等等.
编译器如何选择#define值的数据类型?我没有申请这个问题的答案; 我只是好奇.
我已经阅读了MPAndroidChart的文档(使用v3.0.1),但似乎找不到删除条形标签的方法。
我想隐藏显示在每个栏顶部的值,或者将它们的值更改为我可以手动设置的值。两种选择都适合我的实现。
我不确定是否有可能两者之一。我对android开发非常陌生,任何帮助都会很棒。
我的代码是:
public class MainActivity extends AppCompatActivity {
protected BarChart chart;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
chart = (BarChart) findViewById(R.id.chart1);
Description desc ;
Legend L;
L = chart.getLegend();
desc = chart.getDescription();
desc.setText(""); // this is the weirdest way to clear something!!
L.setEnabled(false);
YAxis leftAxis = chart.getAxisLeft();
YAxis rightAxis = chart.getAxisRight();
XAxis xAxis = chart.getXAxis();
xAxis.setPosition(XAxisPosition.BOTTOM);
xAxis.setTextSize(10f);
xAxis.setDrawAxisLine(true);
xAxis.setDrawGridLines(false);
leftAxis.setTextSize(10f);
leftAxis.setDrawLabels(false);
leftAxis.setDrawAxisLine(true);
leftAxis.setDrawGridLines(false);
rightAxis.setDrawAxisLine(false);
rightAxis.setDrawGridLines(false);
rightAxis.setDrawLabels(false);
BarData data = new BarData( setData());
data.setBarWidth(0.9f); // set custom …Run Code Online (Sandbox Code Playgroud)