如何从 elasticsearch 数据为 vega 中的路径创建索引?
How to create indices from elasticsearch data for paths in vega?
我目前正尝试按照 this 示例使用 vega 在 Kibana 中创建节点图。为了进行测试,我使用了 node-data
和 link-data
的硬编码示例数据集,而不是 data/miserables.json
.
节点数据值:
[
{ "name": "node1" },
{ "name": "node2" }
]
link-数据值:
[
{ "source": 0, "target": 1, "link-info": "connection" }
]
link-data
的 source
和 target
属性 期望相应 node-data
条目的索引,所以目前我用硬编码绘制了两个节点node1 和 node2 之间的连接(到目前为止工作正常)。
但是,现在我想使用来自 elasticsearch 查询的数据而不是硬编码数据集。
目前我可以使用以下格式在 elasticsearch 中查询 table
弹性数据值:
[
{ "src_node": "node1", "dst_node": "node2", "link_info": "connection" }
]
现在我不知道如何从中创建 link-data
。我可能可以使用 elasticsearch 查询提取唯一的来源和目的地来创建 node-data
但我怎样才能得到他们的索引来创建匹配的 link-data
?
我找到了 this indexof()
函数,我认为我可以在 expr
中使用它来转换 src_node
和 dst_node
但无法得到它无法正常工作,也找不到使用示例。
但也许我错过了另一个选择,比如也许有一种方法可以使用 node.name
而不是 source
和 target
的索引?
我整理了一个 minimum working example(Vega 在线编辑器)- 见第 69 行的简短描述
万一有人无意中发现这个:原来我确实错过了这个 "another option"。
这就像将 "id": "datum.name"
附加到
一样简单
{"force": "link", "links": "link-data", "distance": 100}
看起来像
{"force": "link", "id": "datum.name", "links": "link-data", "distance": 100}
.
这允许基于名称的引用而不是索引。现在,数据集 link-data
中的字段 name
将用于识别 node-data
中的项目。 Documentation Reference
我目前正尝试按照 this 示例使用 vega 在 Kibana 中创建节点图。为了进行测试,我使用了 node-data
和 link-data
的硬编码示例数据集,而不是 data/miserables.json
.
节点数据值:
[
{ "name": "node1" },
{ "name": "node2" }
]
link-数据值:
[
{ "source": 0, "target": 1, "link-info": "connection" }
]
link-data
的 source
和 target
属性 期望相应 node-data
条目的索引,所以目前我用硬编码绘制了两个节点node1 和 node2 之间的连接(到目前为止工作正常)。
但是,现在我想使用来自 elasticsearch 查询的数据而不是硬编码数据集。
目前我可以使用以下格式在 elasticsearch 中查询 table
弹性数据值:
[
{ "src_node": "node1", "dst_node": "node2", "link_info": "connection" }
]
现在我不知道如何从中创建 link-data
。我可能可以使用 elasticsearch 查询提取唯一的来源和目的地来创建 node-data
但我怎样才能得到他们的索引来创建匹配的 link-data
?
我找到了 this indexof()
函数,我认为我可以在 expr
中使用它来转换 src_node
和 dst_node
但无法得到它无法正常工作,也找不到使用示例。
但也许我错过了另一个选择,比如也许有一种方法可以使用 node.name
而不是 source
和 target
的索引?
我整理了一个 minimum working example(Vega 在线编辑器)- 见第 69 行的简短描述
万一有人无意中发现这个:原来我确实错过了这个 "another option"。
这就像将 "id": "datum.name"
附加到
{"force": "link", "links": "link-data", "distance": 100}
看起来像
{"force": "link", "id": "datum.name", "links": "link-data", "distance": 100}
.
这允许基于名称的引用而不是索引。现在,数据集 link-data
中的字段 name
将用于识别 node-data
中的项目。 Documentation Reference