-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
darge图节点多,交互卡顿。 #3946
Comments
看了下,导致栈溢出是 dagre 布局中算法导致。你提供的 demo 中生成的数据是一个超长的链,而在 dagre 中有很多层级递归的算法,因此出现了该问题。如果是一个常见结构的图(不是这样一个超长的链),那么不会报错。在你的 demo 中改了数据生成,不生成超长链
|
我试了下你的 demo 中,节点数量 3000 个,并且不是一个链的情况下:
|
按照上述做了修改,3K个节点平移等操作仍然掉帧明显, 是否有还有其他的优化建议或者是其他的展示方式来避免呢 |
请问有什么进展吗,dagre我也遇到了拖拽卡顿问题,我的情况是某一层级下数据量过大,如第二层有1w+nodes |
想问下第二层 1w 个节点,用户咋看嘞?我理解可能需要给到用户更有效点的信息,比如渲染之前先做一下 filter 或者合并一些数据,或者分页之类的,起码保证用户看的时候能比较高效地获得信息。 性能的问题也在持续优化中 |
最近大幅度优化了 dagre 在指定 layer 时的计算性能,欢迎试用 |
拖拽、缩放画布的卡顿,在大数据量下建议为 drag-canvas zoom-canvas 打开 |
@Yanyan-Wang 请问您说的dagre算法的优化,在哪个版本以后呢?我目前用的最新的版本4.8.21. 出现了1500个结点时,图绘制需要大概45s得时间。如果将布局type设置成换成默认的或grid,同样的数据绘制时间可以控制在4s左右。但是只有dagre的布局才能满足业务需求。所以想请教您,关于dagre算法是否还有优化? |
问题描述
官方性能示例能达到5W个节点,请问如何优化到可渲染W级别节点
重现链接
https://codesandbox.io/s/blissful-haslett-hxys8n?file=/src/components/HelloWorld.vue
重现步骤
1.输入框输入10,点击渲染 正常
2. 刷新之后输入框输入1000,点击渲染 略卡
3. 刷新之后输入框输入5000,点击渲染 Maximum call stack size exceeded
预期行为
平台
屏幕截图或视频(可选)
No response
补充说明(可选)
No response
The text was updated successfully, but these errors were encountered: