我正在寻找一个如何将Graph及其节点和边缘表示为backbone.js模型的示例。我希望有人可以指出一个如何优雅地做到这一点的例子。
由于
马丁
答案 0 :(得分:1)
(假设你想存储节点的元数据 - 比如姓名等)
一种简单的方法可能是将图表表示为节点模型的集合。
这些模型中的每一个都有一个包含由它们连接到的节点的id表示的边数组的属性 - 这样collection.toJSON()
将返回如下内容:
[
{
id: 1,
name: 'first node',
edges: [2, 4]
},
{
id: 2,
name: 'second node',
edges: [1, 3, 4]
},
{
id: 3,
name: 'third node',
edges: [2]
},
{
id: 1,
name: 'first node',
edges: [1, 2]
}
]
您可以实现方法来计算节点之间的距离或派生类中的集群。
现在正如我所提到的,这是一个简单的实现,根据您希望在图表上执行的操作,这可能非常低效。
如果您想进行一些阅读并找到以类似哈希(模型)或类似列表(集合)结构存储图形信息的最有效方法,请选择谷歌“邻接矩阵”或“邻接列表”,从那里开始!