图配置项
阅读时间约 3 分钟
G6 图实例的 配置项 控制着图的各个方面,包括画布设置、视口属性、数据、布局、样式、交互行为、插件等。通过合理配置这些选项,可以灵活定制图的外观和行为。
配置项可以在图实例创建时指定,也可以通过 API 在运行时动态修改。某些基础配置(如 devicePixelRatio、container)修改后需要销毁并重新创建图实例才能生效。
获取当前图表的所有配置项。
getOptions(): GraphOptions;
返回值
示例
// 获取当前图表的配置项const options = graph.getOptions();console.log('当前图表配置:', options);// 获取特定配置console.log('当前画布宽度:', options.width);console.log('当前布局配置:', options.layout);
更新图表的配置项。
setOptions(options: GraphOptions): void;
参数
参数 | 描述 | 类型 | 默认值 | 必选 |
---|---|---|---|---|
options | 新的配置项 | GraphOptions | - | ✓ |
说明
⚠️ 注意: 要更新 devicePixelRatio、container 等基础属性,需要销毁当前图实例后重新创建。其他大部分配置可以动态更新。
示例 1: 基本用法
// 更新图表配置graph.setOptions({width: 1000, // 更新宽度height: 800, // 更新高度autoFit: true, // 开启自适应animation: true, // 启用动画});
示例 2: 更新主题
// 更新图表主题配置graph.setOptions({theme: {type: 'dark', // 切换到暗色主题// 自定义主题配置node: {palette: ['#1AAF8B', '#F8E71C', '#8B572A', '#7ED321'],},edge: {palette: ['#F5A623', '#F8E71C', '#8B572A', '#7ED321'],},},});
示例 3: 更新布局配置
// 更新布局配置graph.setOptions({layout: {type: 'force', // 切换到力导向布局preventOverlap: true,nodeStrength: -50,edgeStrength: 0.7,},});
示例 4: 更新节点和边的默认配置
// 更新节点和边的默认样式配置graph.setOptions({node: {style: {fill: '#91d5ff',stroke: '#40a9ff',lineWidth: 1,radius: 10,},},edge: {style: {stroke: '#91d5ff',lineWidth: 2,endArrow: true,},},});