Neo4j前端可视化组件Neovis.js使用说明

一、说明

Neovis.js将JavaScript可视化和Neo4j无缝集成。与Neo4j的连接非常简单明了,并且由于它是在Neo4j的属性图模型的基础上构建的,因此 Neovis 的数据格式与数据库保持一致。在单个配置对象中定义基于标签、属性、节点和关系的自定义和着色样式。
在使用的过程中,发现了该库的一个缺点,就是需要将neo4j的地址、用户名、密码写在展示的html文件中,这使得数据不够安全,找了一下,发现并没有很好的解决办法(例如创建只读账号等),如果有更好的解决办法,欢迎在下方留言。

效果图:
在这里插入图片描述

二、使用

本文基于github上的例子构建一个示例,现在本机上安装neo4j,网上安装的教程很多,再次不再赘述。现在开始准备Neovis.js
github地址:
https://github.com/neo4j-contrib/neovis.js
1.下载Neovis.js
我用官方提供的这个下载方式总是报错,所以不再使用,直接把项目克隆下来
2.
按照readme下面的Quickstart Example进行操作,准备数据
在这里插入图片描述
3.找到github项目中的示例文件
在这里插入图片描述

将github中的examples.simple-example.html文件复制到自己的flask项目中的templates中,把dist.neovis.js和dist.neovis.js.map复制到自己的flask项目中的static中,如下:
在这里插入图片描述
4.修改配置
下面主要介绍下需要修改simple-example.html文件
ps:
因为博主对前端知识了解不是很多,有纰漏或者解释不到位,敬请谅解

① 加入/static/neovis.js的路径,如下。

<script type="text/javascript" src="../static/neovis.js"></script>

②修改jQuery的路径,官网提供的好像不太好用

 <script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script>

③主要修改下面的function draw()

 <script type="text/javascript">
		// define config car
		// instantiate nodevis object
		// draw

		var viz;

		function draw() {
			var config = {
				container_id: "viz",
				server_url: "neo4j的地址",  // 注意端口号不是7474
				server_user: "neo4j用户名,一般为neo4j",
				server_password: "neo4j密码",
				 // labels是节点样式的配置,不写为默认配置
				labels: {
					"节点标签": {
						"caption": "显示的节点属性",
						"size": "points", // 节点大小,可以以节点属性值定义大小
						"font": {
                            "size":26, // 字体大小
                            "color":"#000000"  // 字体颜色
                                                 },
                        //"title_properties": [ // 节点提示中显示的属性,不写为显示所有
                        //    "nick_name",
                        //    "points"
                        //                ],
                        //"image": 'https://visjs.org/images/visjs_logo.png', // 可以用图片来显示节点
						//"community": "community"
						//"sizeCypher": "MATCH (n) WHERE id(n) = {id} MATCH (n)-[r]-() RETURN sum(r.weight) AS c"  //获取节点大小的Cypher查询
					},

				},
				// relationships是关系的配置
				relationships: {
					"节点之间的关系": {
						"thickness": "关系的宽度",
						"caption": false  // 是否显示关系的属性
					},
				},
				arrows: true,  // 是否显示关系的箭头
				hierarchical: false, // 节点显示方式 是否启用分层布局
				initial_cypher: "MATCH n-[]->() RETURN p LIMIT 300"  // 初始化显示的
			};

			viz = new NeoVis.default(config);
			viz.render();
			console.log(viz);

		}
    </script>

注意:

  • server_url不是端口7474的那个,而是neo4jweb管理平台上显示的这个,如下图这个bolt://localhost:7687

在这里插入图片描述

  • relationships的标签,中文不太好用,最好用英文
  • initial_cypher: 是在显示这个页面时,初始化的执行语句

三、源码示例

GitHub链接: Neo4j Neovis Example

  • 20
    点赞
  • 114
    收藏
    觉得还不错? 一键收藏
  • 31
    评论
neovis.js@1.5.0是一个用于在网页中可视化Neo4j图形数据库的开源库。Neo4j是一种基于图形的数据库管理系统,它使用节点、关系和属性来表示和存储数据,适用于复杂的关联和查询。而neovis.js则是一个帮助开发人员将Neo4j数据可视化的工具。 neovis.js@1.5.0提供了一个简单易用的API,使开发人员能够快速构建动态的图形可视化界面。开发人员可以使用neovis.js创建并自定义图形,可以添加样式、标签、节点和关系以及其他图形元素。它还支持导航、缩放、过滤等交互功能,用户可以通过键盘、鼠标或触摸来操作图形。 neovis.js@1.5.0还提供了一系列的配置选项,使开发人员能够自定义图形的外观和行为。例如,可以设置节点的颜色、大小、形状,以及关系的样式和箭头方向等。开发人员还可以自定义图形的布局算法,以便根据具体需求优化图形的显示效果。 除了基本的图形展示功能,neovis.js@1.5.0还提供了一些高级功能。例如,它支持对图形进行聚类、搜索和筛选,方便用户根据特定条件对图形进行分析和探索。还可以通过与Neo4j数据库的集成,实现动态的数据更新和实时的图形渲染。此外,neovis.js还支持与其他前端框架(如React、Vue.js和Angular)的集成,方便在现有的前端项目中使用。 总而言之,neovis.js@1.5.0是一个功能强大且易于使用的库,可以帮助开发人员快速构建漂亮、交互性强的Neo4j图形可视化界面,并提供了丰富的配置选项和高级功能,使用户能够根据具体需求自定义图形展示和交互操作。
评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值