Antv G6 Graph

作者 antvisa105fa12a9fa无许可证506 个星标收录于 2026年10月8日更新于 2026年10月8日仓库2周前更新

Use this skill whenever the user wants to create, customize, or troubleshoot G6 v5 graph/network visualizations. Triggers include: any mention of 'G6', 'antv g6', '@antv/g6', 'G6 graph', 'G6 图', '网络图', '关系图', '拓扑图', '树形图', '流程图', '思维导图', '鱼骨图', '力导向图', 'force graph', 'network visualization', 'node-edge diagram', 'graph layout', 'tree layout', 'dagre layout', 'mindmap', 'social network', or requests about G6 node styles, edge types, behaviors, plugins, layouts, combos, or data structures. Also use when debugging G6 rendering errors, v4→v5 migration, or graph interaction issues. Do NOT use for G2 statistical charts, X6 editor diagrams, or S2 pivot tables.

AI 生成的概览

指导创建、定制和排查 AntV G6 v5 图与网络可视化。

功能
该技能提供构建和排查 G6 v5 图可视化的说明,涵盖网络图、树形图、思维导图和流程图等。它记录了 v5 的声明式构造函数写法、数据格式、标签样式、布局选项、交互行为,以及常见的 v4 到 v5 迁移错误。它还描述了一个用于查询 G6 文档和示例的 HTTP 上下文检索服务。
适用场景
当用户想要创建、定制或调试 G6 v5 图或网络可视化时使用,包括布局、节点与边样式、交互行为、插件和组合。它也适用于 v4 到 v5 迁移问题和图交互问题。不适用于 G2 统计图表、X6 编辑器图表或 S2 透视表。
运行要求
需要 @antv/g6 v5 包来运行所述代码,并需要网络访问 AntV 上下文检索 HTTP API(主机 sive.antv.antgroup.com)以查询文档。该技能不包含脚本,仅为说明文档。

G6 v5 Graph Visualization

Overview

G6 v5 is AntV's graph visualization engine for network diagrams, tree graphs, and relationship visualizations. It uses a declarative configuration style where new Graph({...}) defines all nodes, edges, layouts, behaviors, and plugins in one constructor call.

javascript
import { Graph } from '@antv/g6';
const graph = new Graph({  container: 'container',  data: {    nodes: [{ id: 'node-1', style: { labelText: 'Node 1' } }],    edges: [{ source: 'node-1', target: 'node-2' }],  },  layout: { type: 'force' },  behaviors: ['drag-canvas', 'zoom-canvas', 'drag-element'],});
await graph.render();

CDN Usage

html
<script src="https://unpkg.com/@antv/g6@5/dist/g6.min.js"></script><script>  const graph = new G6.Graph({    container: 'container',    data: {      nodes: [{ id: 'node-1', style: { labelText: 'Node 1' } }],      edges: [{ source: 'node-1', target: 'node-2' }],    },    layout: { type: 'force' },    behaviors: ['drag-canvas', 'zoom-canvas', 'drag-element'],  });  graph.render();</script>

Content Retrieval Service

When using AntV G6 for data visualization, if you need to understand the concepts, usage, API, examples, and other aspects of G6 v5, you can use the provided context retrieval service. When using the skill, content is retrieved via an antv HTTP API server using GET requests.

  • Host: https://sive.antv.antgroup.com
  • Endpoint: /api/v1/context/retrieve
  • Method: GET
  • Parameters: query, library, topK, content, maxTokens

Retrieve skills by query (hybrid search = FTS + vector + RRF fusion). Constraints docs are indexed as regular skill documents and will appear in search results naturally.

ParameterTypeRequiredDescription
querystring✅Search keywords, e.g. force layout node
librarystring✅Library name: g2, g6, x6
topKnumberNumber of results to return (default: 5)
contentbooleanReturn full reference doc markdown (default: true)
maxTokensnumberMax tokens per result (default: unlimited)
bash
curl "https://sive.antv.antgroup.com/api/v1/context/retrieve?query=force+layout+node+style&library=g6"

Critical Rules

MUST: Use new Graph({...}) — NOT v4 new G6.Graph()

javascript
// ❌ WRONG — v4 constructornew G6.Graph({ container: 'container', ... });
// ✅ CORRECT — v5 constructorimport { Graph } from '@antv/g6';new Graph({ container: 'container', ... });

MUST: All config in one constructor call, await graph.render()

javascript
// ❌ WRONG — v4 separate data methodgraph.data(data);graph.render();
// ✅ CORRECT — v5 declarative config + async renderconst graph = new Graph({  container: 'container',  data: { nodes: [...], edges: [...] },  layout: { type: 'force' },  behaviors: ['drag-canvas', 'zoom-canvas'],});await graph.render();

MUST: Data format with id, source, target

javascript
// ❌ WRONG — missing node id, missing edge endpointsconst data = { nodes: [{ label: 'A' }], edges: [{ from: 'A', to: 'B' }] };
// ✅ CORRECT — each node has unique id, each edge has source/targetconst data = {  nodes: [{ id: 'node-1', style: { labelText: 'A' } }],  edges: [{ source: 'node-1', target: 'node-2' }],};

MUST: Use style.labelText for labels — NOT label or labelCfg

javascript
// ❌ WRONG — v4 label confignode: { labelCfg: { text: 'Node 1' } }
// ✅ CORRECT — v5 style.labelTextnode: { style: { labelText: 'Node 1' } }

MUST: nodeStrength must be ≥ 0 in force layout

javascript
// ❌ WRONG — negative nodeStrength causes unpredictable behaviorlayout: { type: 'force', nodeStrength: -300 }
// ✅ CORRECT — non-negative valuelayout: { type: 'force', nodeStrength: 300 }

MUST: force layout does NOT support preventOverlap / nodeSize

javascript
// ❌ WRONG — v4 params silently ignored in v5layout: { type: 'force', preventOverlap: true, nodeSize: 30 }
// ✅ CORRECT — use d3-force collide for overlap preventionlayout: { type: 'd3-force', collide: { radius: 30 } }

MUST: No Mode concept — behaviors are flat array

javascript
// ❌ WRONG — v4 mode-based behavior configmodes: { default: ['drag-canvas', 'zoom-canvas'] }
// ✅ CORRECT — v5 flat behavior arraybehaviors: ['drag-canvas', 'zoom-canvas', 'drag-element']

MUST: container is mandatory, default 'container'

javascript
// ❌ WRONG — no container specifiedconst graph = new Graph({ data });
// ✅ CORRECTconst graph = new Graph({ container: 'container', data, ... });

Quick Reference

User IntentRetrieve Query
Graph initialization, container, renderGET /api/v1/context/retrieve?query=graph+init+render&library=g6
Network / force graphGET /api/v1/context/retrieve?query=network+force+layout&library=g6
Tree / mindmap / fishboneGET /api/v1/context/retrieve?query=tree+mindmap+fishbone+layout&library=g6
Dagre / hierarchy / flow chartGET /api/v1/context/retrieve?query=dagre+hierarchy+flow+chart&library=g6
Circular / radial / grid layoutGET /api/v1/context/retrieve?query=circular+radial+grid+layout&library=g6
Node styles (rect, circle, diamond, html)GET /api/v1/context/retrieve?query=node+style+rect+circle+diamond+html&library=g6
Edge types (line, cubic, polyline, loop)GET /api/v1/context/retrieve?query=edge+line+cubic+polyline+loop&library=g6
Combo / group nodesGET /api/v1/context/retrieve?query=combo+group+node&library=g6
Custom node / edgeGET /api/v1/context/retrieve?query=custom+node+edge+element&library=g6
Behaviors (drag, zoom, click-select, hover)GET /api/v1/context/retrieve?query=behavior+drag+zoom+click-select+hover&library=g6
Plugins (minimap, tooltip, toolbar, legend)GET /api/v1/context/retrieve?query=plugin+minimap+tooltip+toolbar+legend&library=g6
Events systemGET /api/v1/context/retrieve?query=events+system+click+mouse&library=g6
State / style animationGET /api/v1/context/retrieve?query=state+animation+transform&library=g6
Data structure / transformsGET /api/v1/context/retrieve?query=data+structure+transforms&library=g6
Theme / backgroundGET /api/v1/context/retrieve?query=theme+background+style&library=g6
Lasso select / collapse-expandGET /api/v1/context/retrieve?query=lasso+collapse+expand+select&library=g6

Dependencies

  • @antv/g6 — G6 v5 graph visualization engine

来源与署名

来源:antvis/chart-visualization-skills位于skills/antv-g6-graph提交a105fa1

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架