xmind使用Java生成思维导图腾讯云开发者社区

在日常的工作与学习中,我们经常会使用思维导图这个工具,来把抽象而又无形的思考转换成有形并且具体的图像,是理清思路,梳理逻辑的一大神器。

准确的说,思维导图并不是一个具体的工具,而是一种方法。是道而不是术。实际落地时,我们通常还需要借助外部的工具。从最原始的纸和笔,到各种软件,可以说是应用尽有。目前我在使用的是xmind这款软件,下面就会以xmind为媒介间接的通过Java代码画思维导图。

我在看书的时候有一个习惯,先通过思维导图画出一本书的大纲,然后通过这个大纲来分主次的去阅读。可能有些同学感到疑惑,还没读过书,如何了解大纲呢?其实一本书的目录就是这本书最好的大纲。

本文通过把一个目录生成思维导图的例子来学习xmind基本的api使用。当然如果想系统学习的同学,可以参考文末给出的官方api链接。下图就是我们最终要生成的结果。

image.png

com.github.eljahxmindjbehaveplugin0.8准备数据我们要生成思维导图,首先得有数据。这里的数据就是一本书的目录。

首先,书籍我选的是《一本书读懂24种互联网思维[2]》,选这本书,并不是因为这本书有多好,而是因为他比较典型,典型就典型在,看过这本书的目录后就没有必要再读这本书了,因为目录已经把要说的内容说的很清楚了。

那知道书名,怎么获取书的目录呢?很简单,打开豆瓣,找到这本书的详情,里面就有书籍的目录,直接把它copy下来就可以了,目录如下图。

//读取目录StringbookName="一本书读懂24种互联网思维";Listcontents=FileUtil.readLines(CLASS_PATH+bookName+".txt","utf-8");首先前两行不必说,我把目录数据保存到了resources目录下的一本书读懂24种互联网思维.txt,这两行代码就是简单读取数据。

//创建思维导图的工作空间IWorkbookBuilderworkbookBuilder=Core.getWorkbookBuilder();IWorkbookworkbook=workbookBuilder.createWorkbook();然后的两行代码,通过Core类创建工作空间构建者类,再通过它的createWorkbook方法创建出一个空白的工作空间,这个创建完就会得到一个没有任何节点的空白导图。

//获得默认sheetISheetprimarySheet=workbook.getPrimarySheet();//获得根主题ITopicrootTopic=primarySheet.getRootTopic();//设置根主题的标题rootTopic.setTitleText(bookName);再接着,通过刚刚创建工作空间得到主sheet,这个sheet跟excel的概念差不多,就像浏览器的一个tab一样。效果如下图

另外还通过主sheet获得了根topic,并设置他的标题为书名,它对应下图

//章节topic的列表ArrayListchapterTopics=Lists.newArrayList();for(Stringcontent:contents){//如果是数字开头为章节名称if(ReUtil.isMatch("^[1-24].*",content)){//创建章节节点ITopictopic=workbook.createTopic();topic.setTitleText(content);chapterTopics.add(topic);}else{//创建小节节点ITopictopic=workbook.createTopic();topic.setTitleText(content);chapterTopics.get(chapterTopics.size()-1).add(topic,ITopic.ATTACHED);}}这段代码比较多,但是重点是创建topic的操作,每个topic就是思维导图的一个节点,可以通过workbook.createTopic()来创建,同样的通过setTitleText设置标题。这段代码其实是分析了目录的规律,有1-24开头的是大章节,而后面紧跟的是小章节,一个大章节下是多个小章节(可以看上面的目录截图)。所以判断是大章节就创建一个新的节点,判断是小章节就往最后一个大章节上添加(通过add方法)。

//把章节节点添加到要节点上chapterTopics.forEach(it->rootTopic.add(it,ITopic.ATTACHED));刚才说了把小章节都添加到了大章节上了,但是大章节现在还是无依无靠的,所以通过一个循环全部添加到了根Topic上。

//保存workbook.save(CLASS_PATH+FILE_SEPARATOR+bookName+".xmind");到此我们编码结束了,但是这些操作还在内存中,我们需要通过workbook的save方法把文件保存到硬盘上,另外文件后缀记得改成xmind,否则软件无法识别。

THE END
1.思维导图例子思维导图例子 亿图图示专家包括了大量思维导图,心智图设计实例。方便大家参考设计风格和了解如何绘制思维导图。 思维导图模板心智图风险管理 自我分析解决问题营销策略 决策介绍策划 生活目的营销战略思维会议 简单的话题SWOT分析每周策划 为了更好的了解,您可以免费试用我们的绘图软件:https://www.edrawsoft.com/cn/MindMap-Examples.php
2.XMind2022中文版作为一个头脑风暴的工具,思维导图让我们感觉到想象力一下子打开了, 新点子层出不穷,真是思如泉涌,这种感觉以前从来没有过,真是太棒了。——Alpha Learning 更多的例子请自行 Google…… 思维导图制作软件 XMind 的优点 那么,在众多的思维导图制作工具中,我们为什么推荐 XMind 呢?下面我们用一张脑图来罗列一https://www.iplaysoft.com/xmind.html
3.结构化知识管理20张思维导图为例子动态知识管理设计图结构化知识管理-20张思维导图为例子 思维导图,是结构化思考最高效的工具。 以中心主题为核心,通过各级主题的组合来呈现信息。 思维导图的可视化图形表达,让我们可以更加便于理解和记忆。各主题间相互连接的形式,展现了信息间的相关性。促进我们综合性的思考。https://blog.csdn.net/m0_69512897/article/details/132414418
4.最好的头脑风暴法,集体思维导图,实现1+1>2四、集体思维导图的行动例子 在最近几年,集体思维导图制作的方法已经成功地广泛应用于家庭、学校和跨国公司。 有一份波音飞机设计手册被压缩成了一幅25英尺长的思维导图,可以让100多名高级航空工程师在几个星期学会以前需要几年才能学会的东西,结果估计可节约1100万美元。 https://www.jianshu.com/p/833cba641078
5.我用思维导图讲述《嫦娥奔月》比尔.盖茨说:“未来世界会由掌握思维导图和脑力开发的人来引领。” 相信大家多多少少有听说过思维导图,也很可能用过。你有没有想过,思维导图不只是成年人常用的思维工具,在淘气宝幼儿园大一班,孩子们也尝试着运用思维导图讲述中秋节的传说故事呢! https://www.meipian.cn/1m7hpmgi
6.思维导图Table of Contents 封面 思维完全 第1章-令人惊奇的大脑 第2章-杰出的大脑 第3章-进退两难的大脑 第4章-放射性思维 第5章-未来之路 第6章-集体讨论词汇 第7章-集体讨论图形 第8章-从集体讨论到思维导图 第9章-思维导图制作 第10章-指导原则 第11章-形成个人风格 第12章-作出选择 第18章- 自我分析 https://max.book118.com/html/2019/0315/6111202241002014.shtm
7.当绘本和思维导图相遇……说来,我之于思维导图的认识似乎源自小朋友的成长,随着各论坛、机构、公众号中“思维导图”的流行,对于这一颇有点儿高大上的新名词我也慢慢了解、学习并运用于亲子阅读。 之前的课堂教学、读书笔记对思维导图虽有所运用,但没有系统地介绍给小朋友,它对于我们整理思路、深度思考 、回顾联想确有帮助。 https://m.xiaohuasheng.cn/blog?id=e70a93cc863f4b80
8.逻辑思维公开课:14个思维导图,轻松提高逻辑思考和表达能力,转是不是又长又啰嗦,而且多个原因内容有重叠的,用思维导图怎么做呢? 怎么样,8个原因一下子成了3个,而且对3个原因基于重要性进行了排序,对问题的解决就更有针对性了。 再看一个例子:下图为某咨询公司受聘为一家公司培训其员工的战略规划能力所提供的服务,从任务、目标到效果共14项清单,是不是很头大: https://m.wang1314.com/doc/webapp/topic/21640370.html
9.说明文思维导图怎么画?用思维导图梳理知识学习说明文的特点或阅读说明文文章的时候,通常可以绘制对应的说明文思维导图,以便直观清晰且有序梳理说明文知识内容.下面迅哥就简单教大家说明文思维导图的画法.https://www.liuchengtu.com/tutorial/shuomingwen.html