位置: 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)

  • 网易云唱片收藏架怎么编辑(网易云唱片收藏架怎么换)

    网易云唱片收藏架怎么编辑(网易云唱片收藏架怎么换)

  • word文档打印不全怎么调整(word文档打印不显示页码)

    word文档打印不全怎么调整(word文档打印不显示页码)

  • win10分区c盘留多大(win10分区c盘留多大合适)

    win10分区c盘留多大(win10分区c盘留多大合适)

  • ipad如何越狱(ipad如何越狱下载软件)

    ipad如何越狱(ipad如何越狱下载软件)

  • 抖音助力湖北认证免费不(抖音助力是真的吗)

    抖音助力湖北认证免费不(抖音助力是真的吗)

  • 解bl锁什么意思(解bl锁的好处)

    解bl锁什么意思(解bl锁的好处)

  • 淘宝抢东西其中有一件失效(淘宝抢东西其中有一件失效影响付款吗)

    淘宝抢东西其中有一件失效(淘宝抢东西其中有一件失效影响付款吗)

  • 微信步数可以看什么时候走的吗(微信步数可以看到之前的 但是今天0)

    微信步数可以看什么时候走的吗(微信步数可以看到之前的 但是今天0)

  • 网络机顶盒卡顿的原因(网络机顶盒卡顿怎么办)

    网络机顶盒卡顿的原因(网络机顶盒卡顿怎么办)

  • ipd是什么(华为ipd是什么)

    ipd是什么(华为ipd是什么)

  • 用无线网上网的记录会查到吗(用无线网上网的内容会查到吗)

    用无线网上网的记录会查到吗(用无线网上网的内容会查到吗)

  • 抖音声浪跟平台怎么结算(抖音的声浪)

    抖音声浪跟平台怎么结算(抖音的声浪)

  • 苹果XR系列和苹果11系列区别(苹果xr与苹果)

    苹果XR系列和苹果11系列区别(苹果xr与苹果)

  • switch能无线同屏吗

    switch能无线同屏吗

  • 什么是作用设计值(什么叫作用)

    什么是作用设计值(什么叫作用)

  • 华为备忘录如何设置时间(华为备忘录如何导出)

    华为备忘录如何设置时间(华为备忘录如何导出)

  • 内存卡是外置sd卡吗(内存卡是外存吗)

    内存卡是外置sd卡吗(内存卡是外存吗)

  • 淘宝店铺会员收费吗(淘宝店铺会员收多少钱)

    淘宝店铺会员收费吗(淘宝店铺会员收多少钱)

  • 怎么把b站的音频导出来(怎么把B站的音乐运用为手机铃声)

    怎么把b站的音频导出来(怎么把B站的音乐运用为手机铃声)

  • 哈罗单车为什么扫不了(哈罗单车为什么显示该车不可用)

    哈罗单车为什么扫不了(哈罗单车为什么显示该车不可用)

  • 京东忘记密码怎么找回(京东忘记密码怎么办验证码没有发到手机上)

    京东忘记密码怎么找回(京东忘记密码怎么办验证码没有发到手机上)

  • 苹果app内购买怎么扣费(苹果app内购买怎么下载)

    苹果app内购买怎么扣费(苹果app内购买怎么下载)

  • 手机怎么清灰尘(手机怎么清灰尘声音)

    手机怎么清灰尘(手机怎么清灰尘声音)

  • 快手极速版怎么发作品(快手极速版怎么关闭广告推送)

    快手极速版怎么发作品(快手极速版怎么关闭广告推送)

  • 苹果x怎么关闭夜间模式(苹果x怎么关闭打开的程序)

    苹果x怎么关闭夜间模式(苹果x怎么关闭打开的程序)

  • vivoy93如何快速关机(vivoy93s快捷键怎么调出来)

    vivoy93如何快速关机(vivoy93s快捷键怎么调出来)

  • 安全平台无法正常运行!微软新更新导致Windows Server系统出现严重故障(安全平台无法认证怎么办)

    安全平台无法正常运行!微软新更新导致Windows Server系统出现严重故障(安全平台无法认证怎么办)

  • macOS 11 Big Sur 开发者预览版 Beta 8推送

    macOS 11 Big Sur 开发者预览版 Beta 8推送

  • Uniapp接入插件的三种方式(uniapp安装插件)

    Uniapp接入插件的三种方式(uniapp安装插件)

  • 在dedecms织梦添加自制的背景图片(织梦怎么建站)

    在dedecms织梦添加自制的背景图片(织梦怎么建站)

  • dedecms织梦清空文档后,让文档ID从1开始(织梦一直显示上一页和下一页)

    dedecms织梦清空文档后,让文档ID从1开始(织梦一直显示上一页和下一页)

  • 往年有亏损本年没有亏损
  • 土地使用税的纳税时间
  • 民非企业开通捐赠
  • 购入固定资产入账
  • 代开增值税票普票专票税点一样吗
  • 公共部门管理中具有哪些作用
  • 企业走账的会计处理
  • 超标的职工教育经费为什么是可抵扣
  • 房地产销售土地增值税纳税人减免申请核准表
  • 代扣代缴个人所得税手续费是否缴纳增值税
  • 去年的原材料发票能入账吗
  • 无形资产土地的入账价值包括哪些
  • 简并税率政策是什么?简并税率政策要点如何解读?
  • 技术服务合同在北京由哪个法院管辖
  • 总资产增长率的含义
  • 旅游业务增值税税率
  • 基地建设费归哪个会计科目
  • 汇兑产出的收益计入
  • 计提的跌价准备销售时怎么处理
  • 明股实债和明债实股
  • 关于临时工工资标准的规定
  • 未分配利润亏损怎么做分录
  • 金税维护费280怎样填报
  • php parse_url
  • 内置管理员无法激活
  • 创业补贴的作用
  • 企业期末营业利润分录
  • 施工单位工程款支付程序
  • 税收包含哪些税种
  • php的用处
  • php 缓存
  • 园林绿化企业设立的条件和程序
  • 木质家具出口
  • 2022最新廉洁警示语句
  • 如何确定合伙企业的利润
  • 电力安装公司都有什么业务
  • js函数怎么调用
  • 总结php删除字符的方法
  • 企业收到财政补贴如何开票
  • 织梦建站详细教程
  • 季度利润是负数怎么办
  • 社保代扣代缴的办理流程
  • 中小企业估值
  • 单位购买预付卡可以用现金吗
  • 理财产品怎么分类总结
  • 汽车报废残值如何处理
  • 企业特殊工种不备案可以补报备吗
  • 房地产企业土地增值税清算
  • 企业记账的相关规定
  • 交通运输行业属于什么性质
  • 资产减值损失借贷方向
  • 应税消费品含税吗
  • 会计学中管理费用是什么
  • 分销佣金税务账务怎么做
  • 成本发票未到怎么入账
  • 计提工会经费的会计分录
  • 自产货物赠送客户账务处理
  • 企业会计档案由谁保管
  • 新办企业是不是企业
  • 查看mysql执行sql日志内容
  • sql ntext数据类型字符替换实现代码
  • sql 语句
  • win7系统c盘太满了,如何清理
  • 索尼笔记本电脑怎么进入bios设置
  • 电脑取消开机密码显示不能改
  • ubuntu server怎么样
  • xp电脑注册表怎么打开
  • linux下时间同步的两种方法分享
  • wind微博
  • unsupportedclassversion
  • unity3d跑酷游戏推荐
  • 单向链表的基本操作
  • 浅析2种JavaScript继承方式
  • 国际货运怎么代理
  • 开具负数发票(专用发票)流程?
  • 企业税收筹划中的涉税风险及其防范
  • 公司汽车用油计入什么科目
  • 中国企业银行可以转账吗
  • 如何计算土地增值税税率
  • 重庆税务查询企业信息查询系统
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设