jiangyu

Results 25 comments of jiangyu

This sounds great, I hope to use monaco on the mobile side.

请问有什么进展吗,dagre我也遇到了拖拽卡顿问题,我的情况是某一层级下数据量过大,如第二层有1w+nodes

> > ::: demo > > ``` > > ``` > > > > > > > > > > > > > > > > > > > >...

提供个方法,虽然不确定行不行,但可以换ranker试试: `{ ranker: 'network-simplex'  | 'tight-tree' | 'longest-path' }` 这是dragre.js内置的三个ranker,@antv/layout也继承了下来

> 请教一下,ranker这个参数是干什么用的?我尝试着更改了一下,没发生什么别的变化 @xingzilong 其实就是dagre布局中的三种分层算法,具体可以看下这个: https://www.yuque.com/antv/g6-blog/xxp5nl#2j2gF 有精力的可以去读最初的论文,也有说到:《A Technique for Drawing Directed Graphs》https://graphviz.org/documentation/TSE93.pdf

> ![image](https://private-user-images.githubusercontent.com/68324868/325503308-8b8ea3e9-0d3b-4085-8e28-2442d8110371.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTQwMjk1ODMsIm5iZiI6MTcxNDAyOTI4MywicGF0aCI6Ii82ODMyNDg2OC8zMjU1MDMzMDgtOGI4ZWEzZTktMGQzYi00MDg1LThlMjgtMjQ0MmQ4MTEwMzcxLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA0MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNDI1VDA3MTQ0M1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWM2NmI0YjQ0YzEyN2UwMDlkYTA5YmUzNDI3ZWYwZmQ3MDBlY2QxYWI1ODkxYjA1MzY1MmQ2NDljYzg4MzQ0MjEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.OkPQUz1wwYSmKV0upIb4WXnFqIbHYALXIovyzOvoGGk) 这是我之前在掘金上看到的一个文章 但是我根据他的设置没有实现 @xw-xw12 我也看过这个,也看过dagre源码,说实话看得满痛苦的。。。尤其这个ranker这块,太迷了

再探讨下,对于大数据量下(node+edge的图元超过1w+),滚动和拖拽等交互的性能优化方向: * 是否可以借鉴类似\`\`\`虚拟列表\`\`\`的原理,仅渲染和处理canvas区域内的节点/边,但如果图元高度密集,估计也收效甚微; 我之前在v4的\`\`\`scroll-canvas\`\`\`, 实现过类似的demo:https://codesandbox.io/p/github/k644606347/g6-dagre-scroll-perf/main * 还是说可以迁移到WebGL/WebGpu来彻底解决交互性能问题;

@Aarebecca 你好,在测试```scroll-canvas```时发现了一个现象,就是将容器div#app的height设置为2000px,让其带有滚动条后,滚动canvas时,div容器也会跟着滚动; **预期:** 只有canvas内容滚动才对; **现状:** 上层div和canvas都会滚动; **测试环境:** - 设备:Apple M3 Pro - 浏览器:chrome 123.0.6312.59(正式版本) (arm64) / safari 17.2.1 (19617.1.17.11.12) / firefox 121.0.1 (64 位) **示例:** ![Large GIF (1726x1022)](https://github.com/antvis/G6/assets/6951527/1fd4a710-1927-4bd2-b53b-21361de57079) **原因分析:** 1....

> 这里存在一个误解,滚动 Canvas 并非是指将容器设置得足够高以出现滚动条,而是画布内元素呈纵向排布且超出了视口高度。因此这个组件的实现逻辑应该与 `drag-canvas` 基本一致,只是 `trigger` 支持 `wheel` 或者 `up`/`down` ,方向只支持纵向调整。 @Aarebecca 我其是指antv封装的\`wheel\`事件,底层实现是否有欠缺,我的环境下,**在滚动G6的画布时,外层的其他带有滚动条的div也跟着滚动了(div是外部系统生成的且决定是否可滚动,不是G6库生成的)**,这种交互效果可能会被使用G6v5的用户吐槽,**比如只是想看G6的非视口区域数据,结果滚动后,整个外层div都跟着滚动,导致G6整体都滚出了div的视口;**; 且无法通过wheel事件给出的\`event.nativeEvent.preventDefault\`阻止div滚动,因为底层代码在绑定原生wheel时设置了passive: true,(如有更优解决方案请指出); 可以在我这个分支下,将div#app的height改大一些,运行下demo上下滚动看看效果就明白了; ![](https://github.com/antvis/G6/assets/6951527/d9e994c9-99a4-4ad5-97c2-510462103ff7) ![](https://github.com/antvis/G6/assets/6951527/1351b22b-421d-4827-8afd-e8e26304f91b)