Layout NetLogo:network-spring布局,2个品种

Layout NetLogo:network-spring布局,2个品种,layout,netlogo,Layout,Netlogo,我是NetLogo新手,在添加“布局弹簧”时遇到问题 我的两个主要问题是: 节点可能太靠近世界的边缘(我希望随机分配节点,但不要太靠近边缘) 节点创建跨越世界边界的链接 breed[A-agents A-agents] 品种[B-代理人B-代理人] 设置 清除所有 重置滴答声 繁殖-A 繁殖-B 连接产卵 结束 产生-A;;创建一个初始A代理并添加到设置 创建代理1 [设置形状“三角形” 设置大小为0.75 设置颜色44 setxy随机xcor随机ycor ] 结束 产卵B;;创建一个初始B

我是NetLogo新手,在添加“布局弹簧”时遇到问题

我的两个主要问题是:

  • 节点可能太靠近世界的边缘(我希望随机分配节点,但不要太靠近边缘)
  • 节点创建跨越世界边界的链接
breed[A-agents A-agents]
品种[B-代理人B-代理人]
设置
清除所有
重置滴答声
繁殖-A
繁殖-B
连接产卵
结束
产生-A;;创建一个初始A代理并添加到设置
创建代理1
[设置形状“三角形”
设置大小为0.75
设置颜色44
setxy随机xcor随机ycor
]
结束
产卵B;;创建一个初始B代理并添加到设置中
创建代理1
[设置形状“圆”
设置大小为0.5
设置颜色为红色
setxy随机xcor随机ycor
]
结束
连接产卵;;在B和代理之间创建链接
询问B代理[创建与A代理的链接[设置绿色]]
结束
外带;;根据a-agents/B-agents的实际用户分布创建新节点
设p随机浮动100;;创建一个介于1-100之间的随机数
如果(p>96)[创建代理1
[设置形状“三角形”
设置大小为0.75
设置颜色44
setxy随机xcor随机ycor
让这成为一个自我
让testnum随机浮动1
ifelse测试数>0.58
[创建与其他B代理之一的链接[设置绿色]]
[创建与其他A-代理之一的链接[设置颜色44]]
]
如果(p=0.56
[创建与其他B代理之一的链接[设置红色]]
[创建与其他A-代理之一的链接[设置颜色青色]]
]
打上钩
结束

要在世界边缘留下一个没有创建代理的空白区域,一种方法是改变这一点:

setxy random-xcor random-ycor
为此:

setxy (0.8 * random-xcor) (0.8 * random-ycor)
若要使链接不跨越世界边界,请打开视图设置并禁用“双向环绕世界”(请参见)

setxy (0.8 * random-xcor) (0.8 * random-ycor)