小编Dea*_*ean的帖子

使用d3.js保存和重新加载力布局

我试图找到正确的方法,以便能够保存一个力图的节点布局位置一旦确定,然后,以重新加载该布局,并从相同的稳定状态再次开始.

我试图通过克隆包含图表的DOM元素,删除它然后重新加载它来做到这一点.

我可以这样做,部分如下: -

_clone = $('#chart').clone(true,true);
$('#chart').remove();
Run Code Online (Sandbox Code Playgroud)

选择包含div,克隆它并将其删除,然后再添加

var _target = $('#p1content');
_target.append(_clone);
Run Code Online (Sandbox Code Playgroud)

选择div用于保存图表并重新加载的图表.重新加载的图表是固定的.

我不知道如何重新连接力以允许操纵继续进行.这可能吗?我想保留节点的固定位置.

另一种可能性,我可以重新加载节点位置并以低alpha启动力吗?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>D3: Force layout</title>
    <script src="./jquery-2.0.3.min.js" type="text/javascript"></script>
    <script type="text/javascript" src="../d3.v3.js"></script>
    <style type="text/css">
        /* No style rules here yet */
    </style>
</head>
<body>
     <div data-role="content" id="p1content">
        <div id="chart"></div>
    </div>
    <script type="text/javascript">

        //Width and height
        var w = 800;
        var h = 600;

        //Original data
        var dataset = {
            nodes: [
                { name: "Adam" },
                { name: …
Run Code Online (Sandbox Code Playgroud)

d3.js force-layout

15
推荐指数
2
解决办法
4356
查看次数

标签 统计

d3.js ×1

force-layout ×1