位置: IT常识 - 正文

neovis.js+vue实现知识图谱前端展示,踩坑后的经验分享!!!(vue onshow)

编辑:rootadmin
neovis.js+vue实现知识图谱前端展示,踩坑后的经验分享!!! 一、说明

推荐整理分享neovis.js+vue实现知识图谱前端展示,踩坑后的经验分享!!!(vue onshow),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue展示neo4j,vue onshow,vue.js v-on,vue onshow,vue基于nodejs,vueorg.js,vue基于nodejs,vue基于nodejs,内容如对您有帮助,希望把文章链接给更多的朋友!

        Neovis.js将JavaScript可视化和Neo4j无缝集成。 Neovis 的数据格式与数据库保持一致,可以直接连接数据库。就是需要将neo4j的地址、用户名、密码写在展示的html文件中,这使得数据不够安全

二、使用

github地址:https://github.com/neo4j-contrib/neovis.js

1.下载:

npm install --save neovis.js@v1.5.0

2.引入:

 import NeoVis from 'neovis.js/dist/neovis.js'

3.html创建DOM元素

<div ref="viz" id="viz" style="width:100%;height:100%"></div>

4.页面加载进来调用draw()画图函数

draw () { // config 配置项 var config = { container_id: 'viz', //dom元素id // neo4j服务器地址,用户名 和 密码 server_url: 'bolt://xx.xx.xx.xx:7687', //连接的地址是端口号为7687的不是7474 server_user: '用户名', server_password: '密码', // labels是节点样式的配置 // 没有在这个地方配置的节点将会是默认样式 labels: { 员工: { caption: 'show', // 节点显示的文字对应内容key community: 'community', //节点颜色 String:要用作社区(color)的属性名。默认为“按标签着色”。 size: 'pagerank', // 用作节点大小的属性名。默认为1。 // image: 'https://www.yuucn.com/wp-content/uploads/2023/05/1683650546-3c2fc84a9c77a6a.png', // 节点字体大小设置 font: { size: 15, color: '#606266' }, title_properties: ['age'] //如果提供了title_properties,则工具提示中将只显示其中列出的属性。否则,所有属性都显示在工具提示中。 //sizeCypher: String:获取节点大小的Cypher查询。$id表示要查询大小的节点的id,Cypher查询应该返回Neo4jNumber。config.labels.sizeCypher的优先级高于config.labels.size,即sizeCypher将覆盖size字段的结果大小。 }, 员工属性: { caption: 'show', community: 'community', // group: 'community', size: 'pagerank', // image: 'https://www.yuucn.com/wp-content/uploads/2023/05/1683650546-3c2fc84a9c77a6a.png', font: { size: 14, color: '#606266' }, } }, // relationships是关系线段样式的配置 // 没有在这个地方配置的线段将会是默认样式 relationships: { 该员工参与项目: { thickness: 'weight', //String:线段粗细,用作边缘厚度的属性名。默认为1。 caption: true, //Boolean:如果设置为true,则关系类型将显示为边缘标题。或String:用作边缘标题的属性名。 font: { size: 12, color: '#606266' } // 关系节点文字大小颜色 }, 员工属性: { thickness: 'weight', caption: true, font: { size: 12, color: '#606266' } }, asks: { thickness: 'weight', caption: true //Boolean:如果设置为true,则关系类型将显示为边缘标题。或String:用作边缘标题的属性名。 } }, // 关系线段是否显示箭头 arrows: true, hierarchical: false, // 节点显示方式 是否启用分层布局后 // 分层结构或者默认 "hubsize"(默认)和"directed". hierarchical_sort_method: 'directed', encrypted: 'ENCRYPTION_OFF', // "ENCRYPTION_OFF" (default) or "ENCRYPTION_ON" trust: 'TRUST_ALL_CERTIFICATES', // "TRUST_ALL_CERTIFICATES" (default) or "TRUST_SYSTEM_CA_SIGNED_CERTIFICATES" // 配置数据库查询语句, 替换成自己的查询语句才可以显示 initial_cypher: 'MATCH (n:`员工`) RETURN n LIMIT 25' } this.viz = new NeoVis(config) this.viz.render() // 渲染 // 注册点击事件,点击后执行函数 在nodeClick(自己编写的函数)函数中实现,如果不需要点击节点触发功能,则此方法省略 this.viz.registerOnEvent('clickNode', this.nodeClick) },

根据上文 则可以显示对应neo4j数据库里面所有的员工节点的前25条数据。

点击节点触发的函数

// 此函数为注册的点击函数,根据自己的需求编写逻辑//node参数为点击时neovis返回的当前节点数据{nodeId:'节点的id',node:当前节点对象}nodeClick (node) { this.viz._network.off('click') const statement ='match p = (n)-[r]->() where id(n)= ' + node.nodeId + ' return p' this.viz.updateWithCypher(statement) // 点击节点后增加查询语句 更新数据,添加最新查到的数据 },

点击节点,使用updateWithCypher方法后,点击事件会多次挂载;所以每次执updateWithCypher方法之前要解绑之前绑定的点击事件this.viz._network.off('click')

三、文档描述: new Neovis(config)

Neovis的构造函数。根据给定的配置创建新的Neovis对象。config请参阅以上代码中的注释配置

Neovis.clearNetwork()

清除网络可视化

neovis.js+vue实现知识图谱前端展示,踩坑后的经验分享!!!(vue onshow)

Neoivs.registerOnEvent(eventType,handler)

注册事件函数eventType事件类型,handler用于管理事件的处理程序,也就是需要执行的函数

eventType事件类型:clickNode、clickEdge、completed、error

Neovis.reinit(config)

使用新的config对象重新初始化网络可视化。请参阅配置

Neovis.reload()

重新加载可视化。将再次从config对象中的initial_cypher从Neo4j获取数据。

Neovis.stabilize()

停止物理模拟、稳定可视化效果。

Neovis.renderWithCypher(statement)

使用Cypher语句的结果呈现新的可视化效果。Cypher查询中返回的任何Node和Relationship对象都将在可视化中呈现。当前不支持路径。

Neovis.updateWithCypher(statement)

使用Cypher语句的结果更新当前可视化,重新指定当前节点。Cypher查询中返回的任何Node和Relationship对象都将在可视化中呈现。当前不支持路径。此函数不会更改renderWithCypher或初始密码给出的原始查询。

config

配置项都在draw函数中以注释的形式标注

一个配置对象,它定义:

如何连接Neo4j(必选)用于加载可视化数据的初始Cypher查询(可选)应在其中呈现可视化效果的DOM元素(必需)如何设置可视化元素的样式(labels和relationships)(必需)

更多配置内容可进入github查看,或阅读源码

注意:由于我之前下载2.0版本不管是npm下载还是直接引入js文件都一直报错所以使用了1.5版本

问题:

        1.刚开始使用一直加载不出来节点数据,是因为 initial_cypher 赋值的查询代码写错了

        2.查询出来节点没有关系线段连接,是因为initial_cypher 查询语句只查询了节点 没有把关系查询出来,如下代码,使用身份证号 把“当前员工”和当前员工的“员工属性”节点以及节点关系查询出来(根据自己的数据库内容条件查询数据)

MATCH (f:`员工` {card_id: "此处是身份证号"})-[r:`员工属性`]->(q:`员工属性` {card_id: "此处是身份证号"}) RETURN *
本文链接地址:https://www.jiuchutong.com/zhishi/284047.html 转载请保留说明!

上一篇:前端实现 PDF 预览的常见方案(前端生成pdf文件)

下一篇:hcontrol.exe是什么进程 作用是什 hcontrol进程查询(hhcol.exe)

  • 文档已被其他程序锁定是否以只读模式打开(文档已经被其他应用程序锁定)

    文档已被其他程序锁定是否以只读模式打开(文档已经被其他应用程序锁定)

  • 腾讯视频取消自动续费怎么弄(腾讯视频取消自动收藏功能)

    腾讯视频取消自动续费怎么弄(腾讯视频取消自动收藏功能)

  • 用别人家的WiFi怎样增强信号(用别人家的wifi看黄会有记录吗)

    用别人家的WiFi怎样增强信号(用别人家的wifi看黄会有记录吗)

  • 苹果11侧边按钮怎么关机(苹果11侧边按钮失灵怎么办)

    苹果11侧边按钮怎么关机(苹果11侧边按钮失灵怎么办)

  • 打印机黄灯一直亮(打印机黄灯一直闪烁不能打印)

    打印机黄灯一直亮(打印机黄灯一直闪烁不能打印)

  • iphone8nfc怎么开(iphone8nfc设置在哪里)

    iphone8nfc怎么开(iphone8nfc设置在哪里)

  • 剪映素材丢失怎么办(剪映素材丢失怎么重新添加)

    剪映素材丢失怎么办(剪映素材丢失怎么重新添加)

  • 笔记本电脑从哪下软件(笔记本电脑从哪里看配置和型号)

    笔记本电脑从哪下软件(笔记本电脑从哪里看配置和型号)

  • 韩剧tv的文件夹叫什么(韩剧tv下载文件)

    韩剧tv的文件夹叫什么(韩剧tv下载文件)

  • 在拼多多上买东西几天到货(在拼多多买东西不想让别人看到怎么办)

    在拼多多上买东西几天到货(在拼多多买东西不想让别人看到怎么办)

  • 支付宝2020集五福可以集几次(支付宝2020集五福特殊福字)

    支付宝2020集五福可以集几次(支付宝2020集五福特殊福字)

  • 40mp是多少像素(40m的照片像素是多少)

    40mp是多少像素(40m的照片像素是多少)

  • word2010不能编辑(word2010不能编辑文档的视图)

    word2010不能编辑(word2010不能编辑文档的视图)

  • qq音乐绿钻账号可以几个人使用(qq音乐绿钻账号无资格兑换)

    qq音乐绿钻账号可以几个人使用(qq音乐绿钻账号无资格兑换)

  • 苹果xsmax有nfc功能吗(苹果xsmax有nfc功能门禁卡)

    苹果xsmax有nfc功能吗(苹果xsmax有nfc功能门禁卡)

  • 360安全浏览器如何保存网页视频(360安全浏览器如何下载)

    360安全浏览器如何保存网页视频(360安全浏览器如何下载)

  • iphonexr可以隐藏刘海吗(iphonexr如何隐藏应用)

    iphonexr可以隐藏刘海吗(iphonexr如何隐藏应用)

  • iPhone如何设置小圆点(iphone如何设置小孩玩手机时间)

    iPhone如何设置小圆点(iphone如何设置小孩玩手机时间)

  • 日落时分中央海岸入口海滩上的救生员小屋,澳大利亚新南威尔士州 (© Yury Prokopenko/Getty Images)(日落时分是什么意思)

    日落时分中央海岸入口海滩上的救生员小屋,澳大利亚新南威尔士州 (© Yury Prokopenko/Getty Images)(日落时分是什么意思)

  • Bert 得到中文词向量(bert获取中文词向量)

    Bert 得到中文词向量(bert获取中文词向量)

  • Python之PyArmadillo计算库的产生(python lzo)

    Python之PyArmadillo计算库的产生(python lzo)

  • 附加税税负
  • 工资与社保的关系怎么写
  • 发票怎么看开票最大额
  • 申报个税需要扣除公积金和社保吗
  • 公章未备案是否不合法
  • 个体工商户开普票流程
  • 高新技术企业如何查询
  • 房地产业营改增
  • 金税三期收费吗
  • 主营业务收入计入什么明细账
  • 营业外支出结转损益
  • 工会经费滞纳金税率
  • 发票缴税怎么交的
  • 转出多交增值税借方余额表示
  • 进口关税发票账务处理如何进行?
  • 装修公司在装修完后增加费用
  • 企业卖了个人如何交税
  • 单位卖报纸的钱算什么
  • w10系统程序停止运行
  • 卸载了驱动程序会怎么样
  • printnow.exe - printnow是什么进程 有什么作用
  • 如果网页上有错字怎么办
  • 应收账款贷方余额怎么在资产负债表中填列
  • 在境外缴纳的增值税税率
  • 对公账户代扣
  • hpdskflt.sys
  • 赠送现金券是否违法
  • php错误级别有哪些
  • 股权投资收益需要缴纳企业所得税吗
  • 金蝶迷你版财务软件报价
  • uniapp动态修改pages.json
  • 企业购买烟酒可以抵扣吗
  • Smarty3配置及入门语法
  • seaborn库的特点
  • gcn时间序列
  • 如何让别人访问自己的qq空间
  • 事业单位用其他资金用于还单位贷款违法吗
  • 新会计准则分录大全
  • 周转材料二级科目有哪些
  • 库存商品可以领用加工吗
  • 并发环境下,共享资源的正确使用方式是
  • 小规模增值税税率表2023年最新版
  • 应税污染物的计算公式
  • 人工费用和制造费用的约当产量
  • 房地产公司分立 土地转移
  • 售后回租会计准则
  • 公司基本户的钱怎么用
  • 当月发票已认证还能作废吗
  • 工会经费是什么凭证
  • 会计账簿的装订绳子
  • Windows Server 2003关闭启动后的Ctrl+Alt+Del选项和关机时的时间跟踪程序方法
  • 容器内存限制
  • centos6.2安装教程
  • xp系统的设置在哪里
  • win7可以免费升win10
  • window8系统桌面啥样的
  • windows1021h2更新
  • windows10 天气
  • linux的命令行怎么打开
  • 特效添加
  • bootstrap页面代码
  • javascript 操作css
  • alt用不了
  • 控制数值颜色
  • 常用的linux命令大全
  • perl计算时间差
  • cocoscreator lua
  • cocos2d-x教程
  • cocos2dx3.0的label字体去描边
  • php autoload
  • javascript的字符串操作
  • android开发详解
  • jquery 表单
  • TextWatcher实现一键清空EditText
  • 打印个人住房信息查询记录需要什么资料
  • 河北残疾人申报系统
  • 代收国税地税收入
  • 国税地税怎么分成
  • 银行收取手续费可以抵扣进项税额吗
  • 税务局随机抽查事项清单
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设