--- title: 垂直三次贝塞尔曲线边 CubicVertical order: 4 --- ## 概述 垂直三次贝塞尔曲线是一种平滑的曲线,其控制点主要沿垂直方向分布,适合在垂直方向上连接节点。 使用场景: - 适用于垂直布局的图,如组织结构图、树状图。 - 当需要强调垂直方向的连接关系时使用。 **特别注意,计算控制点时主要考虑 y 轴上的距离,忽略 x 轴的变化** ## 在线体验 ## 样式配置 > 如果元素有其特定的属性,我们将在下面列出。对于所有的通用样式属性,见 [BaseEdge](/manual/element/edge/base-edge) | 属性 | 描述 | 类型 | 默认值 | 必选 | | ------------- | ---------------------------------------------------- | ---------------------- | --------- | ---- | | curvePosition | 控制点在两端点连线上的相对位置,范围为`0-1` | number | number[] | [0.5,0.5] | | | curveOffset | 控制点距离两端点连线的距离,可理解为控制边的弯曲程度 | number | number[] | [0,0] | | ## 示例 ### 内置垂直三次贝塞尔曲线边效果 ```js | ob { inject: true } import { Graph } from '@antv/g6'; const data = { nodes: [ { id: 'node1', }, { id: 'node2', }, { id: 'node3', }, { id: 'node4', }, { id: 'node5', }, { id: 'node6', }, ], edges: [ { id: 'line-default', source: 'node1', target: 'node2', }, { id: 'line-active', source: 'node1', target: 'node3', states: ['active'], }, { id: 'line-selected', source: 'node1', target: 'node4', states: ['selected'], }, { id: 'line-highlight', source: 'node1', target: 'node5', states: ['highlight'], }, { id: 'line-inactive', source: 'node1', target: 'node6', states: ['inactive'], }, ], }; const graph = new Graph({ container: 'container', data, node: { style: { port: true, ports: [{ placement: 'top' }, { placement: 'bottom' }], }, }, edge: { type: 'cubic-vertical', style: { labelText: (d) => d.id, labelBackground: true, endArrow: true, }, }, layout: { type: 'antv-dagre', begin: [50, 50], rankdir: 'TB', nodesep: 20, ranksep: 120, }, }); graph.render(); ```