主要内容

镀金

存储有向图neo4j.数据库

描述

例子

storeDigraph (neo4jconnG将有向图转换为Neo4j®图并使用Neo4j数据库连接将其存储在Neo4j数据库中。的节点表和边表中的变量有向图对象(除了endnodes.变量)成为Neo4j图中节点和关系的属性。

例子

storeDigraph (neo4jconnG名称,值使用一个或多个名称值对参数指定其他选项。例如,‘GlobalNodeLabel’,‘人’方法存储有向图中的所有节点节点的标签。

例子

graphinfo=存储的页面(___使用前面语法中的任意输入参数组合以结构形式返回图信息。

例子

全部折叠

创建一个有向图对象并将其内容存储在Neo4J®数据库中。显示生成的neo4j图表的内容。

假设您具有存储在代表社交社区的Neo4j数据库中的图形数据。该数据库有七个节点和八个关系。每个节点只有一个唯一的属性键姓名取值范围为User1通过User7.每个关系都有类型知道

使用URL创建Neo4j数据库连接http:// localhost:7474 / db / data, 用户名neo4j和密码马铃薯

URL =.'http:// localhost:7474 / db / data';用户名=“neo4j”;密码='matlab';neo4jconn = neo4j(URL,用户名,密码);

检查消息属性neo4jconn.空白的消息属性表示连接成功。

neo4jconn。消息
ans = []

创建一个有向图对象,它表示一个新的Neo4j图。这些节点代表另外三个人:User8User9,User10

G =有向图([1 1 3],[2 3 2],[1 2 3],{“User8”“User9”“User10”});

将数据作为Neo4j图存储在Neo4j数据库中。

storeDigraph (neo4jconn G)

默认情况下,镀金函数存储没有节点标签的有向图。此外,该函数使用默认关系类型存储关系边缘

显示关于Neo4j图形节点的信息。graphinfo是包含节点和关系信息的结构。

标准= [“边缘”];graphinfo = searchGraph (neo4jconn、标准);graphinfo.no​​des.
ans =.3×3表NodeLabels NodeData NodeObject  __________ ____________ ___________________________________ 7[][1×1 struct] [1 x1 database.neo4j.http。[] [1×1 struct] [1x1 database.neo4j.http. xml . xml . xml . xml . xml . xml . xml . xml . xml . xml . xml . xml . xml。neo4jode.] 47 [] [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]

节点是一个包含以下变量的表:

  • 节点的标签

  • 节点数据

  • neo4jode.对象

显示关于Neo4j图形关系的信息。

graphinfo.relations.
ans =.3×5表StartNodeID RelationType EndNodeID RelationData RelationObject  ___________ ____________ _________ ____________ _______________________________________ 17 7‘边缘’52[1×1 struct] [1 x1 database.neo4j.http。[1×1 struct] [1x1 database.neo4j.http. txt]Neo4jRelation] 35 7 'Edge' 47 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]

关系是一个包含以下变量的表:

  • 开始节点标识符

  • 关系类型

  • 结束节点标识符

  • 关系数据

  • Neo4jRelation对象

关闭数据库连接。

关上(neo4jconn)

创建一个有向图对象并将其内容存储在Neo4J®数据库中。指定节点标签以应用于生成的Neo4j图表中的所有节点。指定关系类型以应用于生成的Neo4j图中的所有关系。显示图形的内容。

假设您具有存储在代表社交社区的Neo4j数据库中的图形数据。该数据库有七个节点和八个关系。每个节点只有一个唯一的属性键姓名取值范围为User1通过User7.每个关系都有类型知道

使用URL创建Neo4j数据库连接http:// localhost:7474 / db / data, 用户名neo4j和密码马铃薯

URL =.'http:// localhost:7474 / db / data';用户名=“neo4j”;密码='matlab';neo4jconn = neo4j(URL,用户名,密码);

检查消息属性neo4jconn.空白的消息属性表示连接成功。

neo4jconn。消息
ans = []

创建一个有向图对象,它表示一个新的Neo4j图。这些节点代表另外三个人:User8User9,User10

G =有向图([1 1 3],[2 3 2],[1 2 3],[“User8”“User9”“User10”]);

将数据作为Neo4j图存储在Neo4j数据库中。指定节点标签为生成的Neo4j图中的每个节点使用'globalnodelabel'名称-值对的论点。指定关系类型知道为图中的每个关系使用“GlobalRelationType”名称-值对的论点。

storeDigraph (neo4jconn, G,'globalnodelabel''人'......“GlobalRelationType”'知道'

显示关于Neo4j图形节点的信息。graphinfo是包含节点和关系信息的结构。

标准= {'人'};graphinfo = searchGraph (neo4jconn、标准);graphinfo.no​​des.
ans =.10×3表NodeLabels NodeData NodeObject  __________ ____________ ___________________________________ 0“人”[1×1 struct] [1 x1 database.neo4j.http。48 'Person' [1×1 struct] [1x1 database.neo4j.http. name . name . name . name . name . name . name。Neo4jNode] 1 'Person' [1×1 struct] [1x1 database.neo4j.http。Neo4jNode] 2 'Person' [1×1 struct] [1x1 database.neo4j.http。Neo4jNode] 3 'Person' [1×1 struct] [1x1 database.neo4j.http。Neo4jNode] 4 'Person' [1×1 struct] [1x1 database.neo4j.http。Neo4jNode] 5 'Person' [1×1 struct] [1x1 database.neo4j.http。Neo4jNode] 9 'Person' [1×1 struct] [1x1 database.neo4j.http。neo4jode.] 49 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode] 50 'Person' [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]

节点是一个包含以下变量的表:

  • 节点的标签

  • 节点数据

  • neo4jode.对象

graphinfo包含三个附加节点。

显示关于Neo4j图形关系的信息。

graphinfo.relations.
ans =.11×5表StartNodeID RelationType EndNodeID RelationData RelationObject  ___________ ____________ _________ ____________ _______________________________________ 1 0 '知道' 1[1×1 struct] [1 x1 database.neo4j.http。[1×1 struct] [1x1 database.neo4j.http. txt] 0 0 '知道' 21 [1×1 struct] [1x1 database.neo4j.http. txt]1 [1×1 struct] [1x1 database.neo4j.http. txt]4 [1×1 struct] [1x1 database.neo4j.http. txt]5 [1×1 struct] [1x1 database.neo4j.http. txt]4 [1×1 struct] [1x1 database.neo4j.http. txt]9 [1×1 struct] [1x1 database.neo4j.http. txt]Neo4jRelation] 19 48 'knows' 49 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation] 7 48 'knows' 50 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation] 9 50 'knows' 49 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]

关系是一个包含以下变量的表:

  • 开始节点标识符

  • 关系类型

  • 结束节点标识符

  • 关系数据

  • Neo4jRelation对象

graphinfo包含另外三个关系。

关闭数据库连接。

关上(neo4jconn)

创建一个有向图对象,通过指定节点和边。然后,通过指定节点标签和关系类型,将有向图存储在Neo4j®数据库中。显示生成的Neo4j图的内容。使用输出参数访问图形信息。

假设您具有存储在代表社交社区的Neo4j数据库中的图形数据。该数据库有七个节点和八个关系。每个节点只有一个唯一的属性键姓名取值范围为User1通过User7.每个关系都有类型知道

使用URL创建neo4j®数据库连接http:// localhost:7474 / db / data, 用户名neo4j和密码马铃薯

URL =.'http:// localhost:7474 / db / data';用户名=“neo4j”;密码='matlab';neo4jconn = neo4j(URL,用户名,密码);

检查消息neo4j®连接对象的属性neo4jconn.空白的消息属性表示连接成功。

neo4jconn。消息
ans = []

为节点创建一个表。定义的名字变量,其中包含另外三个人的名字:User8User9,User10.然后,定义分类变量将每个人分类为.此外,定义题目变量,包含每个人的职位。前两个人是分析师,第三人是技术人员。

名称= {“User8”“User9”“User10”};分类= {'人''人''人'};标题= {“分析师”“分析师”“技师”};nodetable =表格(名称,分类,标题,'variablenames'......“名字”“分类”'标题'});

创建一个带有两个边的表。一个边缘指定两个人彼此了解。另一个边缘指定两个人彼此合作。

Edge1 = [1 2];Edge2 = [3 3];描述= {'知道''适用于'};edgetable =表([edge1, edge2],描述”,......'variablenames', {'endnodes'“描述”});

创建一个有向图对象使用边和节点表。

G =有向图(edgetable nodetable);

存储数据有向图对象作为Neo4j数据库中的neo4j图表。通过使用使用的Neo4j图表中的每个节点为每个节点指定节点标签'nodelabel'名称-值对的论点。图中使用了分类标题节点标签的节点表变量。此外,图中使用了描述关系类型的边缘表的变量。

标签= {“分类”'标题'};关系=“描述”;graphinfo =存储(Neo4jconn,g,'nodelabel'、标签......“RelationType”,关系)
graphinfo =结构体字段:节点:[3×3 table]关系:[2×5 table]

显示关于Neo4j图形节点的信息。

graphinfo.no​​des.
ans =.3×3表NodeLabels NodeData NodeObject  __________ ____________ ___________________________________ 6{2×1细胞}[1×1 struct] [1 x1 database.neo4j.http。Neo4jNode] 52}{2×1细胞[1×1 struct] [1 x1 database.neo4j.http。neo4jode.] 7 {2×1 cell} [1×1 struct] [1x1 database.neo4j.http.Neo4jNode]

节点是一个包含以下变量的表:

  • 节点的标签

  • 节点数据

  • neo4jode.对象

显示关于Neo4j图形关系的信息。

graphinfo.relations.
ans =.2×5表StartNodeID RelationType EndNodeID RelationData RelationObject  ___________ ____________ _________ ____________ _______________________________________ 17 6‘知道’7[1×1 struct] [1 x1 database.neo4j.http。[1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]

关系是一个包含以下变量的表:

  • 开始节点标识符

  • 关系类型

  • 结束节点标识符

  • 关系数据

  • Neo4jRelation对象

关闭数据库连接。

关上(neo4jconn)

输入参数

全部折叠

neo4j数据库连接,指定为aNeo4jConnect使用该功能创建的对象neo4j

指定的图形,指定为a有向图对象。

名称-值对的观点

指定可选的逗号分隔的对名称,值论点。姓名参数名和价值为对应值。姓名必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen

例子:graphinfo = storeDigraph (neo4jconn G,‘GlobalNodeLabel’,‘人’,‘GlobalRelationType’,‘知道’)存储有向图并指定结果图中的所有节点具有节点标签和所有关系都有知道类型。

请注意

如果没有指定'globalnodelabel''nodelabel',得到的Neo4j图包含没有标签的节点。

全局节点标签,指定为逗号分隔对,由'globalnodelabel'和字符矢量,字符向量,字符串标量或字符串数​​组的字符矢量。要指定一个节点标签,请使用字符向量或字符串标量。要指定多个节点标签,请使用字符向量或字符串数​​组的单元格数组。

在执行镀金函数,生成的neo4j图中的每个节点都包含使用此名称值对参数指定的节点标签。

例子:“人”

例子:{'个人','雇员'}

数据类型:char|细绳|细胞

节点标签,指定为逗号分隔对,由'nodelabel'和字符矢量,字符向量,字符串标量或字符串数​​组的字符矢量。要指定一个节点标签,请使用字符向量或字符串标量。要指定多个节点标签,请指定字符向量或字符串数​​组的单元格数组。

要在生成的Neo4j图中为节点指定不同的标签,请使用这个名称-值对参数。中指定的节点标签必须与节点信息表中的变量名匹配有向图对象。

例子:“人”

例子:{“名称”,“标题”}

数据类型:char|细绳|细胞

全局关系类型,指定为逗号分隔的对,由“GlobalRelationType”和一个字符矢量或字符串标量。要为生成的neo4j图表中的节点之间的所有关系指定相同类型的关系,请使用此名称值对参数。

请注意

在指定关系类型时,使用“GlobalRelationType”“RelationType”名称-值对的论点。您不能同时指定这两个参数。

例子:“知道”

数据类型:char|细绳

与逗号分隔对指定的关系类型“RelationType”和一个字符矢量或字符串标量。要在生成的neo4j图表中指定节点之间的不同类型的关系,请使用此名称值对参数。指定的类型必须与边缘信息表中的变量名称匹配有向图对象。

请注意

在指定关系类型时,使用“RelationType”“GlobalRelationType”名称-值对的论点。您不能同时指定这两个参数。

例子:“描述”

数据类型:char|细绳

输出参数

全部折叠

Neo4j数据库中的图形信息,作为带有这些字段的结构返回。

描述

节点

包含每个节点的节点信息的表关系表格的节点表中包含以下变量:

  • nodelabels.—表示节点标签的字符向量

  • NodeData—结构数组,包含属性键等节点信息

  • nodeObject.- - - - - -neo4jode.对象,该对象表示每个节点

表中的行名称是neo4j节点标识符。

关系

中的节点的关系信息节点表格的关系表中包含以下变量:

  • StartNodeID-每个关系的开始节点的节点标识符

  • RelationType-字符向量,表示每个关系的类型

  • EndNodeID-每个关系的结束节点的节点标识符

  • RelationData-结构数组,包含与每个关系相关联的属性键

  • 关系object.- - - - - -Neo4jRelation对象,该对象表示每个关系

表中的行名是Neo4j关系标识符。

提示

  • 镀金函数存储所有MATLAB®对象作为JSON.细绳neo4j图中的等同物。例如,该功能存储日期DateTime('1月/ 01/2017')作为“1月/ 01/2017”在neo4j图表中。

介绍了R2018a