使用 Spanner Graph 可视化图表

本页面介绍了如何使用 Spanner Graph 可视化图表。Spanner Graph 可视化图表可以显示查询返回的图表元素或图表架构元素。可视化图表可帮助您了解数据点(节点)的连接方式(边缘)。虽然包含数百个数据点的表可能难以解读,但其图表可视化效果可以揭示模式、依赖关系和异常情况。

直观呈现 Spanner Graph 查询结果

如需在 Spanner Studio 中直观呈现 Spanner Graph 查询结果,查询必须使用 SAFE_TO_JSONTO_JSON 函数以 JSON 格式返回图表元素。建议您返回图表路径,而不是单独返回节点和边缘。返回路径具有以下优势:

  • 路径包含节点和边缘的完整数据。如果您返回的是各个节点和边缘,则复杂查询的可视化图表中的某些中间节点和边缘可能不可用。

  • 如果您返回路径,则 RETURN 语句的复杂程度会低于单独返回节点和边缘的复杂程度。

以下示例查询会返回账号转移的路径,您可以直观呈现这些路径:

GRAPH FinGraph
MATCH result_paths = (account:Account {is_blocked: True})-[:Transfers]->(dest_account:Account)
RETURN SAFE_TO_JSON(result_paths) AS result_paths

运行查询后,查询结果区域会显示可视化图表。详细信息面板会显示节点和边缘的标签摘要,以及每个标签的计数。点击节点或边缘即可浏览图表并查看属性、近邻项和连接,如以下屏幕截图所示。或者,您也可以将查询结果视为表,或切换为显示底层图表架构的可视化图表。

查询结果切换按钮。

如需了解详情,请参阅以 JSON 格式返回图表元素

选择 Spanner Graph 可视化图表布局

可视化图表面板上的菜单提供以下布局选项:

  • 强制布局(默认):将节点显示为相互排斥的点,同时连接的节点会相互吸引,模拟物理力以创建直观的布局。

  • 分层:根据连接性定位节点,以创建视觉层次结构。

  • 顺序:根据连接性定位节点,以创建视觉序列。

  • 显示标签:在所有缩放级别下,显示图表中的所有节点和边缘标签。

排查 Spanner Graph 可视化图表问题

以下内容可帮助您排查和了解 Spanner Graph 可视化图表问题和行为。

Spanner Graph 查询未显示可视化图表

问题:您运行 Spanner Graph 查询,但该查询仅以表格式显示。

可能的原因:查询未以 JSON 格式返回图表元素。例如:

  • 以下查询会返回节点和边缘标识符,因此无法直观呈现:
GRAPH FinGraph
MATCH (person:Person {name: "Dana"})-[owns:Owns]->(account:Account)
RETURN person.id as person_id, account.id as account_id
  • 以下查询会返回属性值,因此无法直观呈现:
GRAPH FinGraph
MATCH (person:Person {name: "Dana"})-[owns:Owns]->(account:Account)
RETURN owns.create_time, account.nick_name

推荐的解决方案

使用 SAFE_TO_JSONTO_JSON 以 JSON 格式返回图表元素。如需了解详情,请参阅直观呈现 Spanner Graph 查询结果

Spanner Graph 查询结果部分可视化

问题:查询结果的可视化图表仅显示部分查询结果。

可能的原因:查询返回的数据超过 10 MB。查询可视化图表最多可显示 10 MB 的数据。

推荐的解决方案:简化查询,使其返回的数据量小于 10 MB。

Spanner Graph 可视化图表包含具有意外标签的节点或边缘

问题:Spanner Graph 可视化图表中的节点或边缘显示意外标签。

可能的原因:节点或边缘具有多个标签。Spanner Graph 可视化图表可以为每个节点和边缘显示一个标签。如果节点或边缘具有多个标签,则可视化图表中会显示第一个标签。

推荐的解决方案:无。您无法更改显示的标签。

某些图表元素未显示在 Spanner Graph 可视化图表中

问题:可视化图表包含所有返回的节点和边缘,但部分图表元素未显示。

可能的原因:用于创建 Spanner Graph 可视化图表的查询返回的是各个节点和边缘,而不是图表路径。

建议的解决方案:更新查询以返回图表路径。

后续步骤