人物关系图谱插件

<template>
    <div>
        <div style="height:calc(100vh - 50px);">
            <RelationGraph ref="seeksRelationGraph" :options="graphOptions" :on-node-click="onNodeClick" :on-line-click="onLineClick" />
        </div>
    </div>
</template>

<script>
    import RelationGraph from 'relation-graph'
    export default {
        name: 'Demo',
        components: { RelationGraph },
        data() {
            return {
            graphOptions: {
                allowSwitchLineShape: true,
                allowSwitchJunctionPoint: true,
                defaultJunctionPoint: 'border'
                // 这里可以参考"Graph 图谱"中的参数进行设置
            }
            }
        },
        mounted() {
            this.showSeeksGraph()
        },
        methods: {
            showSeeksGraph() {
            var __graph_json_data = {
                rootId: 'a',
                nodes: [
                { id: 'a', text: 'A', borderColor: 'yellow' },
                { id: 'b', text: 'B', color: '#43a2f1', fontColor: 'yellow' },
                { id: 'c', text: 'C', nodeShape: 1, width: 80, height: 60 },
                ],
                links: [
                { from: 'a', to: 'b', text: '关系1', color: '#43a2f1' },
                { from: 'a', to: 'c', text: '关系2' },
                { from: 'b', to: 'c', text: '关系3' },
                ]
            }
            // 以上数据中的node和link可以参考"Node节点"和"Link关系"中的参数进行配置 
            this.$refs.seeksRelationGraph.setJsonData(__graph_json_data, () => {
                // Called when the relation-graph is completed 
            })
            },
            onNodeClick(nodeObject) {
            console.log('onNodeClick:', nodeObject)
            },
            onLineClick(lineObject) {
            console.log('onLineClick:', lineObject)
            }
        }
    }
</script>

 官网relation-graph:一个vue关系图谱组件

原网站【使用vue实现的人物关系图谱 - 简书

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
人物关系图谱是一种基于数据库的数据可视化方式,可以用于展示人物之间的关系。而neo4j是一种流行的数据库,可以用于存储和查询大规模的数据。下面是一个简单的介绍和演示: 人物关系图谱通常由节点和边组成,其中节点表示人物,边表示人物之间的关系。在neo4j中,节点和边都可以有属性,这些属性可以用于描述节点和边的特征。例如,一个人物节点可以有姓名、性别、出生日期等属性,一个关系边可以有关系类型、开始时间、结束时间等属性。 要创建一个人物关系图谱,首先需要定义节点和边的标签和属性。例如,可以定义一个Person节点标签,包含name、gender、birthday等属性,定义一个Relation边标签,包含type、start_time、end_time等属性。然后,可以使用Cypher语言编写库语句来创建节点和边,并将它们添加到neo4j数据库中。例如,下面是一个简单的Cypher语句,用于创建两个人物节点和一条关系边: ``` CREATE (p1:Person {name: 'Alice', gender: 'female', birthday: '1990-01-01'}) CREATE (p2:Person {name: 'Bob', gender: 'male', birthday: '1995-02-02'}) CREATE (p1)-[r:Relation {type: 'friend', start_time: '2020-01-01', end_time: '2021-01-01'}]->(p2) ``` 这个语句创建了两个Person节点,一个名为Alice,一个名为Bob,以及一条Relation边,表示Alice和Bob之间有一个朋友关系,开始于2020年1月1日,结束于2021年1月1日。 创建完节点和边之后,可以使用Cypher语句查询和修改数据。例如,下面是一个简单的Cypher语句,用于查询所有的Person节点和Relation边: ``` MATCH (p:Person)-[r:Relation]->(q:Person) RETURN p, r, q ``` 这个语句查询了所有的Person节点和Relation边,并将它们返回。 最后,可以使用各种工具和库来可视化人物关系图谱。例如,可以使用Python的matplotlib库和py2neo库来绘制形,也可以使用JavaScript的d3.js库和neovis.js库来创建交互式形。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值