亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 cytoscape 同心布局創建圖層

如何使用 cytoscape 同心布局創建圖層

慕婉清6462132 2022-01-13 17:12:59
我試圖用同心布局創建一個內層和外層。但我不讓它工作。這就是我的樣子:內部和外部節點混淆了。這就是我所期望的:我的數據:{ data: [  {data: {    id: 'innerA', level: 1 },    group: 'nodes'  },  ....  {data: {    id: 'outA', level: 2 },    group: 'nodes'   },  ....  {    data: { source: 'innerA', target: 'outA' },    group: 'edges',  },  ....  ],}還有我的布局layout: {  concentric: function( node ){    return node.data("level");  },  levelWidth: function( ){    return 2;  },  name: 'concentric',  minNodeSpacing: 50,  }}從我所期望的布局中的同心功能來看,將根據節點中的圖層屬性分配節點。希望有人有想法。先感謝您。
查看完整描述

1 回答

?
神不在的星期二

TA貢獻1963條經驗 獲得超6個贊

首先,布局將更高級別的節點放在中心,因此您的內部節點應該有級別 2,而外部節點應該有級別 1。其次,我不知道 levelWidth 選項是如何工作的,但是使用默認值而不是 2 工作.


var cy = window.cy = cytoscape({

  container: document.getElementById('cy'),


  style: [{

      selector: 'node',

      css: {

        'content': 'data(id)'

      }

    },

    {

      selector: 'edge',

      css: {

        'curve-style': 'straight',

      }

    }

  ],

  elements: [

  {data: {

    id: 'innerA', level: 2 },

    group: 'nodes'

  },

  {data: {

    id: 'innerB', level: 2 },

    group: 'nodes'

  },

  {data: {

    id: 'innerC', level: 2 },

    group: 'nodes'

  },

  {data: {

    id: 'innerD', level: 2 },

    group: 'nodes'

  },  

  {data: {

    id: 'outA', level: 1 },

    group: 'nodes'

   },

  {data: {

    id: 'outB', level: 1 },

    group: 'nodes'

   },

  {data: {

    id: 'outC', level: 1 },

    group: 'nodes'

   },

  {data: {

    id: 'outD', level: 1 },

    group: 'nodes'

   },

  {data: {

    id: 'outE', level: 1 },

    group: 'nodes'

   },

  {data: {

    id: 'outF', level: 1 },

    group: 'nodes'

   },

  {data: {

    id: 'outG', level: 1 },

    group: 'nodes'

   },

  {data: {

    id: 'outH', level: 1 },

    group: 'nodes'

   },   

  {

    data: { source: 'innerA', target: 'outA' },

    group: 'edges',

  },

  {

    data: { source: 'innerB', target: 'outC' },

    group: 'edges',

  },

  {

    data: { source: 'innerC', target: 'outE' },

    group: 'edges',

  },

  {

    data: { source: 'innerD', target: 'outG' },

    group: 'edges',

  },  

  ],

  layout: {

    name: 'concentric',

    concentric: function( node ){

      return node.data("level");

    },

    minNodeSpacing: 50

  }  

});

body {

  font: 14px helvetica neue, helvetica, arial, sans-serif;

}


#cy {

  height: 95%;

  width: 95%;

  left: 0;

  top: 0;

  position: absolute;

}

<html>


<head>

  <meta charset=utf-8 />

  <meta name="viewport" content="user-scalable=no, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, minimal-ui">

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

  </script>

</head>


<body>

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

</body>


</html>


查看完整回答
反對 回復 2022-01-13
  • 1 回答
  • 0 關注
  • 545 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號