为了账号安全,请及时绑定邮箱和手机立即绑定

需要哪些 javascript 包含文件才能使布局扩展在 cytoscape 中工作?

需要哪些 javascript 包含文件才能使布局扩展在 cytoscape 中工作?

沧海一幻觉 2022-05-26 11:17:59
Cytoscape Javascript 绘图软件带有几个内置布局,还有其他作为“扩展”创建的布局。我尝试使用“klay”布局,这是一个扩展,但我只是收到 JavaScript 错误。(我的代码在'cose'等内置布局中运行良好,但在扩展时失败。这是我使用的包含文件:<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/cytoscape/3.14.0/cytoscape.min.js"></script><script src="https://unpkg.com/klayjs@0.4.1/klay.js"></script>   <script type="text/javascript" src="scripts/cytoscape-klay.js"></script>那么我在这里做错了什么?一旦我有了正确的“包含”文件,代码应该可以工作,因为内置布局的布局的使用应该与扩展布局相同。谢谢。
查看完整描述

1 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

在演示之后,我让它像这样正常工作:


document.addEventListener("DOMContentLoaded", function() {

  var cy = (window.cy = cytoscape({

    container: document.getElementById("cy"),


    // demo your layout

    layout: {

      name: "klay"


      // some more options here...

    },


    style: [{

        selector: "node",

        style: {

          "background-color": "#dd4de2"

        }

      },


      {

        selector: "edge",

        style: {

          "curve-style": "bezier",

          "target-arrow-shape": "triangle",

          "line-color": "#dd4de2",

          "target-arrow-color": "#dd4de2",

          opacity: 0.5

        }

      }

    ],


    elements: {

      nodes: [{

          data: {

            id: "n0"

          }

        },

        {

          data: {

            id: "n1"

          }

        },

        {

          data: {

            id: "n2"

          }

        },

        {

          data: {

            id: "n3"

          }

        },

        {

          data: {

            id: "n4"

          }

        },

        {

          data: {

            id: "n5"

          }

        },

        {

          data: {

            id: "n6"

          }

        },

        {

          data: {

            id: "n7"

          }

        },

        {

          data: {

            id: "n8"

          }

        },

        {

          data: {

            id: "n9"

          }

        },

        {

          data: {

            id: "n10"

          }

        },

        {

          data: {

            id: "n11"

          }

        },

        {

          data: {

            id: "n12"

          }

        },

        {

          data: {

            id: "n13"

          }

        },

        {

          data: {

            id: "n14"

          }

        },

        {

          data: {

            id: "n15"

          }

        }

      ],

      edges: [{

          data: {

            source: "n0",

            target: "n1"

          }

        },

        {

          data: {

            source: "n1",

            target: "n2"

          }

        },

        {

          data: {

            source: "n1",

            target: "n3"

          }

        },

        {

          data: {

            source: "n2",

            target: "n4"

          }

        },

        {

          data: {

            source: "n4",

            target: "n5"

          }

        },

        {

          data: {

            source: "n4",

            target: "n6"

          }

        },

        {

          data: {

            source: "n6",

            target: "n7"

          }

        },

        {

          data: {

            source: "n6",

            target: "n8"

          }

        },

        {

          data: {

            source: "n8",

            target: "n9"

          }

        },

        {

          data: {

            source: "n8",

            target: "n10"

          }

        },

        {

          data: {

            source: "n10",

            target: "n11"

          }

        },

        {

          data: {

            source: "n11",

            target: "n12"

          }

        },

        {

          data: {

            source: "n12",

            target: "n13"

          }

        },

        {

          data: {

            source: "n13",

            target: "n14"

          }

        },

        {

          data: {

            source: "n13",

            target: "n15"

          }

        }

      ]

    }

  }));

});

body {

  font-family: helvetica neue, helvetica, liberation sans, arial, sans-serif;

  font-size: 14px;

}


#cy {

  position: absolute;

  left: 0;

  top: 0;

  bottom: 0;

  right: 0;

  z-index: 999;

}

<html>


<head>

  <script src="https://unpkg.com/cytoscape/dist/cytoscape.min.js"></script>

  <script src="https://unpkg.com/klayjs@0.4.1/klay.js"></script>

  <script src="https://cdn.jsdelivr.net/npm/cytoscape-klay@3.1.3/cytoscape-klay.min.js"></script>

</head>


<body>

  <div id="cy"></div>

</body>


</html>

该演示通常使用本地的 cytoscape-klay 文件,因此应该没有问题。这段代码对你有用吗?



查看完整回答
反对 回复 2022-05-26
  • 1 回答
  • 0 关注
  • 246 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号