# 图谱配置 - config
# 全局配置
全局配置是一个通用配置,项目中所有的图谱共享这些配置。不进行配置则使用图谱默认的全局配置。
import Chart from 'roc-charts';
// 调用静态方法 changeConfig 修改全局配置。以下示例中配置的值是图谱默认全局配置
Chart.changeConfig({
// 场景配置
scene: {
scale: { // 图谱的缩放比例相关配置
max: 2,
min: .05,
step: .05
}
}
// 节点配置
node: {
color: 'pink', // 节点没使用图片,则会使用此颜色画圆
selectedColor: '#66B3FF', // 选中的边框颜色
size: { // 3种大小
small: {
r: 10,
},
normal: {
r: 20,
},
large: {
r: 30,
}
},
sub: { // subImage 的配置
r: 6,
},
interval: 3, // name, subImage 等与节点的间隔
fadeOpacity: .1, // 淡化节点的透明度
}
// 线配置
link: {
lineWidth: 1,
color: '#F1D07B',
twoWayColor: '#EE7768', // 曲线的颜色
side: 10, // 箭头的边长
optimize: 200, // 多少条线开启优化(拖拽等操作时不绘制线)
}
// 文字配置
text: {
align: 'center',
verticalAlign: 'middle',
color: '#666',
fontSize: 12,
}
});
# 独立配置
调用 chart.init() 方法的时候,可接受一个 config 对象,用于配置当前图谱的功能。 其中包括 core, chart, plugin 三类配置。
- core: 图谱的固定几项核心配置。
- chart: 传递给各个实现图谱算法类的配置,如力导向图的配置
- plugin: 传递给各个插件的配置
# 详细配置如下
import Chart from 'roc-charts';
const chart = new Chart({...});
chart.init({
// 核心配置
core: {
watermark: { // 水印
image: watermarkImg, // 水印图片 dataURI
width: 300,
height: 300,
},
animation: true, // 是否开启动画
showExtend: true, // 是否显示扩展标识
initStore: true, // 是否要初始化 store,通常传入的 data 是简单数据,只有 nodes 和 links,如果传入的 data 就是已经初始化后的数据结构,则不需要再初始化
scale: 1, // 缩放比例
dynamicLineWidth: true, // 线的粗细是否随缩放率变化
initPlugin: true, // 是否启用插件,为 false 时所有插件都不会实例化
},
// 所有图谱布局类型的配置
chart: {
// 字段名是图谱类的名称:static chartName = 'force'
// force 力导图的配置
force: {
tickCount: 300 // 配置力导向图的计算次数
},
... // 其它图布局配置
},
// 插件的配置
plugin: {
// 插件的公共配置
common: {
// 配置禁用的插件,默认为空
disable: ['changeNodeDrag', 'nodeInfo', 'changeLineWidth'],
// 是否显示工具栏,默认为 true
toolbarShow: true,
},
// 单个插件的配置
// 字段名是插件类的名称:static pluginName = 'changeChart'
changeChart: { // 图谱切换插件配置
charts: ['force', 'annular'],
},
nodeInfo: { // 展示节点信息插件配置
async getNodeInfo(node) {
return await new Promise((resolve, reject) => {
setTimeout(() => {
resolve(randomString(150));
}, 1000);
});
}
},
... // 其它插件配置
}
});
← 图谱数据 - data 图谱 API →