Echarts 画知识图谱

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>知识图谱demo</title>
    <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
    <script src="https://cdn.bootcss.com/echarts/3.7.2/echarts.min.js"></script>
</head>
<body>
<div id="main"></div>
</body>
<script type="application/javascript">
$(function() {
    var mainDiv = $("#main")
    mainDiv.css("width", "100%");
    mainDiv.css("height", "1000px");
    var myChart = echarts.init(document.getElementById('main'));
    var categories = [];
    graph = {  //图谱数据
        links: [ //links是关系,需指明source、target、id
            {
                id: 0,
                source: 0,
                target: 1
            },{
                id: 1,
                source: 2,
                target: 1
            },{
                id: 2,
                source: 1,
                target: 2
            }
        ],
        nodes: [ //nodes是节点
            {
                id: 0,
                draggable: true,  //可拖拽
                name: "Myriel",  //节点名称
                symbolSize: 10  //节点大小,必须指明,否则节点大小为0,不显示图谱
            },{
                id: 1,
                draggable: true,
                name: "Napoleon",
                symbolSize: 10
            },{
                id: 2,
                draggable: true,
                name: "Geborand",
                symbolSize: 10
            }
        ]
    }
    var option = {
        title: {
            text: 'Les Miserables',
            subtext: 'Default layout',
            top: 'bottom',
            left: 'right'
        },
        tooltip: {},
        legend: [{
            // selectedMode: 'single',
            data: categories.map(function (a) {
                return a.name;
            })
        }],
        animation: false,
        series : [
            {
                name: 'Les Miserables',
                type: 'graph',
                layout: 'force',
                data: graph.nodes, //节点
                links: graph.links, //关系
                categories: categories,
                roam: true,
                label: {
                    position: 'right'
                },
                force: {
                    repulsion: 50
                }
            }
        ]
    };
    myChart.setOption(option);
    console.log(myChart);
});
</script>
</html>

 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Echarts 是一款非常强大的可视化工具,它可以帮助我们快速的构建各种类型的图表,其中包括了基于家谱结构的知识图谱。如果你想要使用 Echarts 构建家谱知识图谱,可以参考以下代码: 首先,需要引入 Echarts 的相关依赖文件: ```html <script src="https://cdn.bootcdn.net/ajax/libs/echarts/4.9.0/echarts.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/echarts/4.9.0/extension/dataTool.min.js"></script> ``` 接着,需要定义一个容器来放置图表: ```html <div id="family-tree" style="width: 100%; height: 600px;"></div> ``` 然后,需要编写相关的 JavaScript 代码来渲染图表: ```javascript // 初始化 echarts 实例 var myChart = echarts.init(document.getElementById('family-tree')); // 配置项 var option = { series: [{ type: 'tree', data: [{ name: '祖先', children: [{ name: '父亲', children: [{ name: '我' }, { name: '兄弟' }] }] }], left: '2%', right: '2%', top: '8%', bottom: '20%', symbolSize: 20, label: { position: 'left', verticalAlign: 'middle', align: 'right', fontSize: 14 }, leaves: { label: { position: 'right', verticalAlign: 'middle', align: 'left' } }, expandAndCollapse: true, animationDuration: 550, animationDurationUpdate: 750 }] }; // 使用刚指定的配置项和数据显示图表 myChart.setOption(option); ``` 以上代码会生成一个简单的家谱知识图谱,你可以根据自己的需求进行进一步的定制化。如果你还有其他关于 Echarts 的问题,欢迎继续提问!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值