colors - 根据乌龟自己的变量更改 NetLogo 中代理的颜色
问题描述
我正在 netlogo 中编写一个简单的食物交换模型,我希望代理[food]
在模型中的级别变化时改变他们的颜色。食物量在 [0,1] 范围内,我希望颜色从白色变为红色(白色 =food
零级,红色 = food
1 级),代码如下:
ask turtles [
set color scale-color red food 1 0 ]
但是我的乌龟在食物交换过程中不知何故变黑了!Turtles 自身的food
值可以是 [0,1] 范围内的任何浮点数。有谁知道我怎样才能将颜色保持在红色(红色到白色)的浅色范围内,而不是黑色?
解决方案
刻度颜色和范围
从上面的示例中,颜色和数字是正确的,但问题似乎与提供的范围有关。由于食物在 [0,1] 内,颜色渐变应该与变化相匹配,尽管它会从 0(白色)到 1(黑色)。
正如 JenB 所提到的,您可能希望扩展预期值的范围。将 scale-color 的范围从 [0,1] 更改为 [0,2] 会有所帮助,因为 scale-color 范围的中点是提供的颜色。
[ set color scale-color red food 2 0 ]
只要食物在 [0,1] 范围内,这个例子就应该在红色和白色之间波动。
推荐阅读
- powershell - Azure DevOps REST API 调用仅检索前 100 条记录并且 ContinuationToken 获取为空
- python - 使用请求将 cURL 转换为 Python
- sql - 如何根据数据表的主键分离数据表中的值?
- python - 关于使用 UCRDTW 包进行时间序列聚类
- python - 如何在字符串和翻译字符串中插入换行符以满足 PEP 8 要求?
- apache-spark - 使用 spark 从日期列中获取周末日期
- erlang - Erlang - 在外部文件中搜索特定字符串,如果不存在则追加文件
- autodesk-forge - 模型聚合:加载文档节点后扩展(选择)不起作用
- c - 为什么即使在 C 中使用 free() 后内存也没有被释放?
- python - 添加具有函数而不是数字的二维列表的项目