一个将思源笔记文档正链和反链以图谱方式渲染的挂件
基于G6引擎
如果您喜欢本挂件, 希望为本项目点亮一个⭐!
接触前端不久,欢迎大佬提出改进优化建议
- 下载源码进入
思源工作空间目录/data/widget/
进行解压 / 已上线集市,直接下载即可使用 - 访问
http://127.0.0.1:6806/widgets/graph/
(建议浏览器访问),或常规/
唤出挂件使用
- 底部工具栏
- 搜索,点击后会展开右侧信息板块进行关键字搜索,回车即可查询
- 全局关系图,点击查询所有文档块,并进行关系展示,可以通过修改
config.js - queryBlockType、ignoreNote
里的数组类型进行范围缩小或扩大,默认是忽略文档块类型之外的文档和用户指南,类型参考思源数据库表 - 导入数据,前期是通过离线文件的方式将画布的数据保存到文件中,此处可以将离线文件导入到画布并渲染,如果有什么其他符合g6规范的数据示例,也可以导入查看
- 保存数据,如果是在思源内部打开的挂件,默认将数据文件保存到
/assets/graph-data
,可以通过修改config.js - /assets/graph-data
自定义路径,放到思源内部,可以保证下次打开页面,会读取内部文件的数据进行渲染 - 刷新画布布局,用于画布节点一次性太多的时候(例如打开全局关系图的时候),页面渲染较慢,可以通过手动点击按钮进行刷新
- 超级节点高亮,目前只是简单通过节点链接的多寡进行高亮标识,没有太多的算法参与
- 清除画布,清空画布所有数据
- 右侧信息板块(页面交互事件时展开)
- 左键点击节点展开详情,点击id可以通过思源打开该文档查看内容
- 扩展n度关系:遍历所选节点n层关系并渲染,未做筛选机制,目前只有config.js里的默认过滤
- 布局与美化--持续
- 搜索文档块功能
- 添加节点功能
- 手动添加非思源笔记节点,添加手动出链入链
- 节点筛选
- 删除单个节点
- 指定节点删除关联反链(会清空画布上没有连线的节点)
- 添加反链功能
- 添加正链功能
- 多层反链添加
- 节点展示功能
- 节点展示缩略信息:别名、命名
- 节点类型标注
- 信息按正链数或反链数排序,最好加在配置文件里面
- 节点右键菜单
- 操作日志
- 保存数据文件/加载数据文件
- 画布展示
- 小地图展示
建议PC端单独开浏览器标签页使用,目前未对样式方面做太多优化
作者 | 项目 | 许可证 |
---|---|---|
leolee9086 | leolee9086/cc-baselib | Unknown |
Zuoqiu-Yingyi | Zuoqiu-Yingyi/widget-query | Unknown |
- docker run -d -v /pathtosiyuan:/siyuan/workspace --name siyuan_dev -p 6807:6806 -u root:root b3log/siyuan:latest --workspace=/siyuan/workspace/
- http://127.0.0.1:6806/widgets/widget-graph/
- npm i
- npm run dev/build
- cp -r dist /pathtosiyuan/data/widgets/widget-graph
- 增加对顶栏按钮的支持,需增加顶栏按钮需补充代码块到思源代码段配置里
- 迁移部分功能按钮至画布右键交互
- 添加文档树关系的扩展
- 基础官方工具栏(撤销,重做,放大,缩小,适应屏幕,实际大小)
- 优化体验
- 加载时判断是否展开搜索框
- 搜索结果添加打开链接,取消透明背景
- 修复高亮和保存存在报错的问题
- vue3重构,功能没太大变化,方便后续功能扩展
- 增加了正反链的列表面板
- 在思源内部打开时,可以点击保存将画布数据保存到思源内部文件,并在下次打开页面加载挂件自动读取该数据文件
- 在思源内部第一次打开挂件时,初始数据添加高亮标识
- 基于思源内部使用方便,调整了页面布局与画布涉及参数
- 添加了图标
- 修复,优化
- 在思源打开挂件时,自动扩展当前文档块的一级关系
- 优化全局关系图(添加忽略笔记本参数,可忽略指南)
- 添加节点时自动根据层数扩展节点
- 添加刷新布局(避免一次扩展节点太多,页面渲染过慢,可手动刷新渲染),超级节点高亮(对出线入线多的节点进行突出显示)功能
- 修复反链统计未去重的bug
- 全局关系图展示(嗯,这个可有可无,只是临时看一下)
- 回车事件绑定
- 完成数据的导入导出
- 可删除节点与连线
- 展示文档信息
- 对连线节点进行颜色标注
- 完成关键字检索笔记文档,并对文档进行初步信息展示
- 可对文档进行图层节点添加
- 对节点提供交互
- 右键添加反链/正链节点