zoukankan      html  css  js  c++  java
  • JavaScript如何生成思维导图(mindmap)

    JavaScript如何生成思维导图(mindmap)

    一、总结

    一句话总结:可以直接用gojs

    gojs

    二、一个用JavaScript生成思维导图(mindmap)的github repo(转)

    转自:一个用JavaScript生成思维导图(mindmap)的github repo - JerryWangSAP - 博客园
    https://www.cnblogs.com/sap-jerry/p/8969516.html

    github 地址:https://github.com/dundalek/markmap

    作者的readme写得很简单。

    今天有同事问作者提供的例子到底怎么跑。这里我就写一个更详细的步骤出来。

    首先查看example.parse.js的内容:

    
    var fs = require('fs');
    
    var parse = require('../parse.markdown');
    
    var transform = require('../transform.headings');
    
    var text = fs.readFileSync('gtor.md', 'utf-8');
    
    var headings = parse(text);
    
    var root = transform(headings);
    
    console.log(root);
    
    fs.writeFileSync('gtor.json', JSON.stringify(root));
    

    使用nodejs命名node example.parse.js执行这段代码:代码读取包含思维导图的本地文件gtor.md, 解析并转换生成本地文件gtor.json.

    然后查看example.view.js, 发现作者使用了d3来做UI的渲染。

    d3.json("gtor.json", function(error, data) {
    
    if (error) throw error;
    
      markmap('svg#mindmap', data, {
    
          preset: 'default', // or colorful
    
          linkShape: 'diagonal' // or bracket
      });
    });

    如果直接双击examples文件夹里的index.html文件在浏览器里打开,会出现跨域错误导致本地文件gtor.json无法访问:

    必须把这个example部署到服务器上运行才行。

    为了简单起见,我做了一个简单的封装。如果您想跑跑例子看看效果,只需要下载我的project到本地:https://github.com/i042416/jerrylist

    直接在本地用nodejs 命令行启动服务器:

    node local.js

    然后localhost:3000/mindmap即可看到思维导图的效果

     
  • 相关阅读:
    HDU 1025:Constructing Roads In JGShining's Kingdom(LIS+二分优化)
    HDU 3938:Portal(并查集+离线处理)
    HDU 1811:Rank of Tetris(并查集+拓扑排序)
    HDU 1074:Doing Homework(状压DP)
    HDU 1024:Max Sum Plus Plus(DP)
    最最最亲爱哒
    hlg-1332 买电脑 ---二分
    时间过得很快
    0514
    hlg1551Assemble--暴力求解
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9964351.html
Copyright © 2011-2022 走看看