vue 集成 vis-network 實現(xiàn)網(wǎng)絡(luò)拓撲圖的方法
vis.js 網(wǎng)站
vs code 下安裝命令
npm install vis-network
在vue 下引入 vis-network組件
const vis = require("vis-network/dist/vis-network.min.js"); require("vis-network/dist/vis-network.min.css");
例子代碼使用
let DIR = "/jtopo/"; let nodes = [ { id: 1, shape: "circularImage", image: DIR + "server.png" }, { id: 2, shape: "circularImage", image: DIR + "server.png" }, { id: 3, shape: "circularImage", image: DIR + "server.png" }, { id: 4, shape: "circularImage", image: DIR + "gather.png", label: "pictures by this guy!" }, { id: 5, shape: "circularImage", image: DIR + "wanjet.png" }, { id: 6, shape: "circularImage", image: DIR + "center.png" }, { id: 7, shape: "circularImage", image: DIR + "cloud.png" }, { id: 8, shape: "circularImage", image: DIR + "center.png" }, { id: 9, shape: "circularImage", image: DIR + "wanjet.png" }, { id: 10, shape: "circularImage", image: DIR + "gather.png" } // { id: 11, shape: "circularImage", image: DIR + "11.png" }, // { id: 12, shape: "circularImage", image: DIR + "12.png" }, // { id: 13, shape: "circularImage", image: DIR + "13.png" }, // { id: 14, shape: "circularImage", image: DIR + "14.png" }, // { // id: 15, // shape: "circularImage", // image: DIR + "missing.png", // brokenImage: DIR + "missingBrokenImage.png", // label: "when images\nfail\nto load" // }, // { // id: 16, // shape: "circularImage", // image: DIR + "anotherMissing.png", // brokenImage: DIR + "9.png", // label: "fallback image in action" // } ]; let edges = [ { from: 1, to: 4 }, { from: 2, to: 4 }, { from: 3, to: 4 }, { from: 4, to: 5 }, { from: 5, to: 6 }, { from: 6, to: 7 }, { from: 8, to: 7 }, { from: 9, to: 8 }, { from: 10, to: 9 } // { from: 8, to: 10 }, // { from: 10, to: 11 }, // { from: 11, to: 12 }, // { from: 12, to: 13 }, // { from: 13, to: 14 }, // { from: 9, to: 16 } ]; for (let i = 1; i <= 100; i++) { num = i + 10; nodes.push({ id: num, label: num.toString() }); edges.push({ from: num, to: 10 }); } let data = { nodes: nodes, edges: edges }; let container = document.getElementById("mynetwork"); //let options = {}; let options = { nodes: { font: { color: "white", //字體的顏色 size: 30 //顯示字體大小 }, scaling: { min: 16, max: 32 //縮放效果比例 }, borderWidth: 0, color: { border: "white", background: "white" //若是引用圖標(biāo),背景顏色 } }, groups: { ws: { //系統(tǒng)定義的形狀 dot等 這些官網(wǎng)都可以找到 shape: "dot", color: "white" } }, edges: { //連接線的樣式 color: { color: "white", highlight: "white", hover: "#848484", inherit: "from", opacity: 1.0 } }, layout: { randomSeed: 1 //配置每次生成的節(jié)點位置都一樣,參數(shù)為數(shù)字1、2等 }, physics: { // barnesHut: { gravitationalConstant: -30000 }, barnesHut: { gravitationalConstant: -80000, springConstant: 0.001, springLength: 200 }, stabilization: false //{ iterations: 2500 } }, interaction: { // navigationButtons: true, hover: true, //鼠標(biāo)移過后加粗該節(jié)點和連接線 selectConnectedEdges: false, //選擇節(jié)點后是否顯示連接線 hoverConnectedEdges: false, //鼠標(biāo)滑動節(jié)點后是否顯示連接線 tooltipDelay: 200, zoomView: true //是否能縮放畫布 }, edges: { shadow: true, //連接線陰影配置 smooth: true //是否顯示方向箭頭 // arrows: {to : true }//箭頭指向from節(jié)點 } }; that.network = new vis.Network(container, data, options); that.network.on("click", function(params) {});
設(shè)置 stabilization: false 可以快速生成10000個節(jié)點
總結(jié)
以上所述是小編給大家介紹的vue 集成 vis-network 實現(xiàn)網(wǎng)絡(luò)拓撲圖的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
Vue 2.0學(xué)習(xí)筆記之使用$refs訪問Vue中的DOM
這篇文章主要介紹了Vue 2.0學(xué)習(xí)筆記之使用$refs訪問Vue中的DOM,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-12-12Vue中@click.stop與@click.prevent、@click.native使用
這篇文章主要介紹了Vue中@click.stop與@click.prevent、@click.native使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-08-08Vue腳手架搭建及創(chuàng)建Vue項目流程的詳細教程
Vue腳手架指的是vue-cli,它是一個快速構(gòu)建**單頁面應(yīng)用程序(SPA)**環(huán)境配置的工具,cli是(command-line-interfac)命令行界面,下面這篇文章主要給大家介紹了關(guān)于Vue腳手架搭建及創(chuàng)建Vue項目流程的相關(guān)資料,需要的朋友可以參考下2022-09-09淺談element中InfiniteScroll按需引入的一點注意事項
這篇文章主要介紹了淺談element中InfiniteScroll按需引入的一點注意事項,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06