1.0.5 • Published 9 months ago

@double_ming/relation v1.0.5

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

alt relation

安装

# npm 
npm install @double_ming/relation
# yarn 
yarn add @double_ming/relation
# pnpm
pnpm add @double_ming/relation

使用

import { Graph } from "@double_ming/relation";
// element 为canvas元素
const graph = new Graph(element, {
    height: 800,
    width: 1300,
    level: 2,
})

 const nodes = [
    { 'id': 'N1', 'text': '侯亮平', 'color': '#ec6941', 'borderColor': '#ff875e' },
    { 'id': 'N2', 'text': '李达康', 'color': '#ec6941', 'borderColor': '#ff875e' },
  ]
  const lines = [
    { 'from': 'N6', 'to': 'N1', 'text': '师生', 'color': '#d2c0a5', 'fontColor': '#d2c0a5' },
    { 'from': 'N13', 'to': 'N21', 'text': '勾结', 'color': '#d2c0a5', 'fontColor': '#d2c0a5' }
]
// 第一个参数为rootId, 
graph.draw('N6', lines, nodes)

操作

  • 鼠标中键平移画布
  • alt + 鼠标滚轴 缩放

Graph 类方法

new 方法

// element 为canvas元素或者canvas的id
// options配置参数如下
const graph = new Graph(elementOrId, options)

draw 方法

// 第一个参数rootId代表canvas中心显示得节点id,nodes和lines分别为节点和连线
graph.draw('N6', lines, nodes)

// 重新增量更新配置 graph.update(options)

> 事件监听
```ts
// 目前仅完成click事件的触发
// 订阅click事件,当click触发时,会自动调用回调函数,同一事件可以订阅多个事件
graph.on('click', (node) => {
  alert(`当前点击节点为:${node.origin.text}`)
})
// 订阅第二个事件
graph.on('click', (node) => {
  alert('graph被点击了')
})

更新动态

  • 2023/8/5 新增加graph 更新功能
  • 2023/8/5 新增加连线是否为虚线,以及是否线条流动
  • 2023/8/4 简了包体积
  • 2023/7/31 修复了缩放时文字错位问题

options配置参数

属性描述类型默认值
color节点颜色string#65a30d
nodeTextColor节点文本颜色string#fff
lineColor连线颜色string#16a34a
lineFontColor连线字体颜色string#16a34a
lineWidth连线线宽,默认为1number1
borderColor节点边框颜色string#000
heightcanvas高number500
widthcanvas宽number500
maxScale最小缩放number4
minScale最大缩放number0.5
level显示层级,默认3层number3
startAngle开始角度,角度制,比如30,代表30度number30
radius每一层的半径number[]180, 160, 140, 120
defaultRadius如果radius,没有设置对应层级的半径,则使用此默认半径number40
nodeRadius节点半径number20
showLineText是否显示节点连线的关系文字booleantrue
fontSize文字大小number16
duration动画持续时长,单位毫秒number2000
arrowLength箭头长度number10
isDashLine是否是虚线,默认不是booleanfalse
dashPattern虚线的模式,默认为10, 10number[]10, 10
isLineFlow线条是否流动,默认不流动booleanfalse

nodes属性

属性描述类型
id节点idstring | number
text节点显示文字string
color节点颜色,如果配置,则替换options中配置,优先级高于options配置string
borderColor节点边框颜色,如果配置,则替换options中配置,优先级高于options配置string

lines属性

属性描述类型
from线起始点节点idstring | number
to线起终点节点idstring | number
text节点直接关系文字string
color线颜色,如果配置,则替换options中配置,优先级高于options配置string
1.0.5

9 months ago

1.0.4

9 months ago

1.0.3

9 months ago

1.0.2

9 months ago

1.0.1

10 months ago

1.0.0

10 months ago