neo4j desktop2 安装与使用

1. Neo4j Desktop 2 简介

1.1 Neo4j Desktop 2 的核心功能与优势

Neo4j Desktop 2 是 Neo4j 官方推出的图形化数据库管理工具,专为开发者和数据科学家设计。

其主要优势包括:

一体化开发环境:集成了数据库实例管理、查询编辑、数据可视化和扩展管理

本地开发友好:支持在本地机器上快速创建和测试图数据库实例

多版本管理:可同时管理多个 Neo4j 数据库版本

插件生态系统:内置插件市场,轻松安装常用扩展 

项目管理:以项目为单位组织数据库、查询和配置  

1.2 适用场景

图数据库开发:为应用程序开发提供本地图数据库环境

本地测试:在部署到生产环境前进行数据模型测试和查询验证

项目管理:管理多个图数据库项目,保持环境隔离

教育与学习:学习 Cypher 查询语言和图数据库概念

2.安装neo4j desktop2

需要装JAVA (注意桌面版和社区版对Java都有要求)

桌面版版本不能过低,建议SE14以上,不需要配置环境和路径;社区版版本不能太高,SE15

下,需要自己手动配置环境和路径。可以去java官网下载历史版本

历史版本下载需要官网注册,注册成功后,可以免费下载。

方法一与方法二下载的结果安装包一样,但是方法一只能下载最新版2.0.5

方法一、通过https://neo4j.com/download下载或者使用网页版

点击桌面版下载

跳转到以下页面

填写信息就会自动下载安装包

方法二、通过https://neo4j.com/下载

点击后跳转到以下页面

往下划找到以下页面即可,可以按自己的需求安装在相应的操作系统。可以下载最新版本2.0.5,也可以下载旧版本1.6,网络上1.6版本教程较多,使用方法也比较简单,本人下载的是2.0.5,网络上教程有点少,所以在使用时也有踩一些坑,比例说不知道怎么创建项目,不知道如何运行项目创建知识图谱,不知道用户名是Instance name还是database user。

3.创建并管理本地图数据库

3.1新建数据库实例:

点击创建一个项目

填写项目名称与密码后点击创建,这里可以看到dstabase user默认为neo4j。

3.2启动与停止数据库:

这里可以看到项目默认为关闭的(STOPPED),点击①标注的即可运行。

此时会弹出一个弹窗,关闭弹窗项目就会结束运行,需要启动时可以先隐藏。

此时可以点开database中查看数据库,默认只有neo4j一个,可以点击create database创建多个知识图谱。然后点击connect可以查看query和explore。

4.构造知识图谱的方法

4.1在查询编辑器中输入代码

4.1.1基础操作

(1)创建节点
// 创建人物节点
CREATE (p:Person {name: 'Alice', age: 30, occupation: 'Engineer'})

// 创建多个节点
CREATE 
  (p1:Person {name: 'Bob', age: 25}),
  (p2:Person {name: 'Charlie', age: 35}),
  (c:Company {name: 'Tech Corp', industry: 'Technology'})
(2)创建关系
// 先匹配节点,然后创建关系
MATCH 
  (a:Person {name: 'Alice'}),
  (b:Person {name: 'Bob'})
CREATE (a)-[:FRIENDS_WITH {since: '2023-01-01'}]->(b)

// 创建节点和关系同时进行
CREATE 
  (alice:Person {name: 'Alice'})-[:WORKS_AT {position: 'Developer'}]->(company:Company {name: 'Neo4j Inc'})
(3)添加/更新属性
// 添加属性
MATCH (p:Person {name: 'Alice'})
SET p.email = '[email protected]'

// 更新多个属性
MATCH (p:Person {name: 'Bob'})
SET p.age = 26, p.department = 'Engineering'

// 添加标签
MATCH (p:Person {name: 'Charlie'})
SET p:Employee:Manager

4.1.2查询操作

(1)MATCH 基础查询
// 查询所有人物
MATCH (p:Person) 
RETURN p

// 查询特定属性
MATCH (p:Person) 
WHERE p.age > 25 
RETURN p.name, p.age

// 查询关系和路径
MATCH (p1:Person)-[r:FRIENDS_WITH]->(p2:Person)
RETURN p1.name, p2.name, r.since
(2)复杂查询示例
// 查找朋友的朋友
MATCH (p:Person {name: 'Alice'})-[:FRIENDS_WITH*2]->(friendOfFriend)
RETURN friendOfFriend.name

// 聚合查询
MATCH (p:Person)
RETURN p.occupation, COUNT(*) as count, AVG(p.age) as avgAge

// 路径查询
MATCH path = (start:Person)-[:FRIENDS_WITH|WORKS_AT*1..3]->(end)
WHERE start.name = 'Alice'
RETURN path

4.2通过import导入csv等文件导入节点

4.3使用python代码

使用代码连接neo4j

踩坑点:

“neo4j://127.0.0.1:7687”是项目上的url,auth=("neo4j","密码")这是用户名database user与创建项目时设置的密码。

4.4在网站上输入http://localhost:7474,可以连接neo4j网页版,输入密码即可。

如果习惯使用旧版本,点击红色即可使用旧版本的neo4j。

以下为旧版本页面

然后通过右键可以使用expand查看相关节点。

Read more

ROS2中的TF(Transform)系统:机器人坐标系的管理神器

ROS 2 TF 概述 TF(Transform) 是ROS中用于跟踪多个坐标系之间变换关系的库。在ROS 2中,TF系统被重构为 TF2,提供了更高效、更灵活的坐标变换管理。 核心概念 1. 坐标系(Frame) * 每个机器人部件、传感器或环境物体都有自己的坐标系 * 例如:base_link(机器人基座)、laser(激光雷达)、camera(相机) 2. 变换(Transform) * 描述两个坐标系之间的平移(translation)和旋转(rotation)关系 * 表示为:frame_B 相对于 frame_A 的位置和姿态 3. 变换树(Transform Tree) * 所有坐标系通过父子关系连接成一棵树 * 必须有一个根坐标系(通常是map或odom) ROS

Vivado 使用教程

Vivado 使用教程

目录 一、创建工程 二、创建文件 三、编写代码 四、仿真验证 五、配置管脚 六、生成Bitstream文件并烧录 一、创建工程 1.左边创建(或打开)工程,右侧可以快速打开最近打开过的工程。 2.来到这一步,命名工程并设置工程的存放路径(这里以D触发器为例) 3.选择RTL点击next。会来到添加文件环节(可以在这里添加.v等文件,不过后面再添加是一样的)直接点击next。 4.选择芯片型号(根据开发板选,这里随便选的),完成后点next会弹出信息概要,finish完成。         二、创建文件 完成上述步骤会进入当前界面: 1.工程管理器add sourse添加(创建)设计文件,创建文件后选择Verilog语言并命名。 2.定义端口(可选),若在这定义后,

【前端进阶之旅】项目实战:使用 three.js+vue3+ts 完成 VR 全景看房应用

【前端进阶之旅】项目实战:使用 three.js+vue3+ts 完成 VR 全景看房应用

文章目录 * 前言 * 一、项目概述与技术栈选择 * 1. 项目需求 * 2. 技术栈选择 * 二、项目核心实现步骤 * 1. 基础环境搭建(Vue3 + Three.js 初始化) * 2. 全景房间模型实现(Room 类) * 3. 房间切换交互(PositionSprite 类) * 4. 物品信息提示(TooltipSprite + 悬浮交互) * 4.1 提示点精灵(TooltipSprite) * 4.2 悬浮显示 Tooltip * 5. 交互体验优化 * 5.1 鼠标拖拽旋转视角 * 5.2 窗口自适应 * 三、功能扩展与优化方向 * 四、总结 前言 在房地产、

FPGA入门:CAN总线原理与Verilog代码详解

FPGA入门:CAN总线原理与Verilog代码详解

目录 一、CAN 总线核心原理 1. 物理层特性 2. 协议层核心概念 (1)位时序 (2)帧结构(标准数据帧) (3)关键机制 二、FPGA 实现 CAN 的核心模块 三、Verilog 代码实现(以 50MHz 时钟、1Mbps 波特率为例) 1. 全局参数定义 2. 位时序模块(CAN Bit Timing Generator) 3. CRC 计算模块(CAN CRC Generator) 4. 发送模块(CAN Transmitter) 5. 接收模块(CAN Receiver)