985博后最爱的免费开源图表绘制工具,导师夸爆了
我们写论文的时候,需要用文档编辑器写文本,需要绘图工具制图。一旦文本、图片修改,就需要在不同的工具间切换,专业绘图和编辑文字花费了用户宝贵的时间 。
有没有什么工具可以同时完成文档编辑和专业绘图?
有!Mermaid 可以做到 ,它通过允许用户创建便于修改的图表来解决这一难题。换句话说,Mermaid 就是通过简单的语法绘制出复杂的图形。
笔者使用 Obsidian 写论文、做笔记。当需要专业绘图的时候,直接在文档上输入Mermaid 语法就可以绘制出一张专业图表。 你不需要安装任何插件,只需要用 Obsidian 就可以实现科研绘图。
下图是笔者使用 Obsidian 写笔记的时候,插入 Mermaid 语法,实时实现专业绘图。导师看了都说牛!
Mermaid
Mermaid 是一个基于 Javascript 的图表绘制工具,通过解析类 Markdown 的文本语法来实现图表的创建和动态修改。Mermaid诞生的主要目的是让文档的更新能够及时跟上开发进度。
Mermaid 被提名并获得了 JS Open Source Awards (2019) 的 "The most exciting use of technology" 奖项!!!
笔者刚开始使用 Mermaid 的时候,也是豁然开朗,原来科研绘图还能这么玩。
Mermaid 也有一个线上实时编辑器(Live Editor),Live Editor 可以编写语法,实时预览图形,还有样本库,可以导出多种文件,如下图所示。Live Editor 的地址:
https://mermaid.live/edit
大家可以上去 Live Editor 体验一下 Mermaid 的用法。
更多详细用法,请看官方教程:
https://mermaidjs.github.io/mermaid/
Mermaid的专业绘图
Mermaid 支持流程图、时序图、饼图、甘特图、类图、状态图、旅程图 等。
下面通过一些示例演示 Mermaid 的用法。
流程图
Mermaid 提供了流程图用法,只需要几行语法就可以实现一个流程图。
下面是一个流程图的示例。在 Obsidian 上输入以下语法,您就可以看到这么个流程图了。
flowchart LR A[Hard] -->|Text| B(Round) B --> C{Decision} C -->|One| D[Result 1] C -->|Two| E[Result 2]
Mermaid 并不复杂,仔细看这段语法,你会发现几个关键点:
• 关键字 flowchart LR,表示从左向右的流程图。同理,如果我们想画从右往左的流程图,那么就用关键字 flowchart RL。
• A[Hard] 表示一个内容为"Hard"方框,名称为 A。
• -->表示连接线方向。
• |Text|表示线上文本。
• B(Round) 表示一个内容为"Round"圆框,名称为 B。
• C{Decision} 表示一个内容为"Decision"菱形,名称为C。
• 定义好几个元素后,就可以通过箭头连接各个元素了。
它的效果是下图这样的。
是不是很神奇?学会使用 Mermaid,还需要什么 VISIO 绘图! Mermaid会自动帮助我们排版,而我们只需要负责好内容。
时序图
Mermaid 提供了时序图用法。时序图的语法和流程图的语法不同,区别还是挺大的。但是流程图和时序图的工作流程差不多:先写关键字,再写定义元素,最后用箭头连接各个元素。
下面是一个流程图的示例。
sequenceDiagram Alice->>John: Hello John, how are you? loop Healthcheck John->>John: Fight against hypochondria end Note right of John: Rational thoughts! John-->>Alice: Great! John->>Bob: How about you? Bob-->>John: Jolly good!
它的效果是下图这样的。如果我们用其它工具自己绘制,那么排版就要花费很长时间。
甘特图
Mermaid 提供了甘特图用法,甘特图的语法更加简单一些。
下面是一个甘特图的示例。读者们只需看看下面的例子就能学会了,创建一个自己的甘特图,用于项目、时间、日程管理是非常实用的。
gantt section Section Completed :done, des1, 2014-01-06,2014-01-08 Active :active, des2, 2014-01-07, 3d Parallel 1 : des3, after des1, 1d Parallel 2 : des4, after des1, 1d Parallel 3 : des5, after des3, 1d Parallel 4 : des6, after des4, 1d
它的效果是下图这样的。
类图
Mermaid 提供了类图,这对于涉及到程序开发的用户而言,简直是太棒了。
下面是一个类图的示例。笔者觉得类图的语法有些复杂,看得有些头晕,不如 VISIO 方便。
classDiagram Class01 <|-- AveryLongClass : Cool <> Class01 Class09 --> C2 : Where am I? Class09 --* C3 Class09 --|> Class07 Class07 : equals() Class07 : Object[] elementData Class01 : size() Class01 : int chimp Class01 : int gorilla class Class10 { <> int id size() }
它的效果是下图这样的。
状态图
Mermaid 支持状态图,语法和流程图、时序图的语法类似。
下面是一个状态图的示例。
stateDiagram-v2 [*] --> Still Still --> [*] Still --> Moving Moving --> Still Moving --> Crash Crash --> [*]
它的效果是下图这样的。
饼图
Mermaid 支持饼图,语法应该是最简单的。笔者总结一下它的语法:
• 先写上关键字 pie。
• 再定义元素,即每个标签对应一个数字,用冒号隔开标签和数字。
• 最后生成一个饼图。
下面是一个饼图的示例。
pie "Dogs" : 386 "Cats" : 85 "Rats" : 15
它的效果是下图这样的。
用户体验旅程图
如果你喜欢写日记,那么用户体验旅程图非常适合你,它可以记录每天的事情和心情。
下面是一个用户体验旅程图的示例,语法很简单:注意缩进和冒号的使用。
journey title My working day section Go to work Make tea: 5: Me Go upstairs: 3: Me Do work: 1: Me, Cat section Go home Go downstairs: 5: Me Sit down: 3: Me
它的效果是下图这样的。
C4图
C4图是 Memarid 的一种实验图,笔者不清楚这个图的用处,但它看上去好像很牛 X。如果你知道这个图是做什么的,那么可以留言告诉我。
下面是一个 C4 图的示例。
C4Context title System Context diagram for Internet Banking System Enterprise_Boundary(b0, "BankBoundary0") { Person(customerA, "Banking Customer A", "A customer of the bank, with personal bank accounts.") Person(customerB, "Banking Customer B") Person_Ext(customerC, "Banking Customer C", "desc") Person(customerD, "Banking Customer D", "A customer of the bank,
with personal bank accounts.") System(SystemAA, "Internet Banking System", "Allows customers to view information about their bank accounts, and make payments.") Enterprise_Boundary(b1, "BankBoundary") { SystemDb_Ext(SystemE, "Mainframe Banking System", "Stores all of the core banking information about customers, accounts, transactions, etc.") System_Boundary(b2, "BankBoundary2") { System(SystemA, "Banking System A") System(SystemB, "Banking System B", "A system of the bank, with personal bank accounts. next line.") } System_Ext(SystemC, "E-mail system", "The internal Microsoft Exchange e-mail system.") SystemDb(SystemD, "Banking System D Database", "A system of the bank, with personal bank accounts.") Boundary(b3, "BankBoundary3", "boundary") { SystemQueue(SystemF, "Banking System F Queue", "A system of the bank.") SystemQueue_Ext(SystemG, "Banking System G Queue", "A system of the bank, with personal bank accounts.") } } } BiRel(customerA, SystemAA, "Uses") BiRel(SystemAA, SystemE, "Uses") Rel(SystemAA, SystemC, "Sends e-mails", "SMTP") Rel(SystemC, customerA, "Sends e-mails to") UpdateElementStyle(customerA, $fontColor="red", $bgColor="grey", $borderColor="red") UpdateRelStyle(customerA, SystemAA, $textColor="blue", $lineColor="blue", $offsetX="5") UpdateRelStyle(SystemAA, SystemE, $textColor="blue", $lineColor="blue", $offsetY="-10") UpdateRelStyle(SystemAA, SystemC, $textColor="blue", $lineColor="blue", $offsetY="-40", $offsetX="-50") UpdateRelStyle(SystemC, customerA, $textColor="red", $lineColor="red", $offsetX="-50", $offsetY="20") UpdateLayoutConfig($c4ShapeInRow="3", $c4BoundaryInRow="1")
它的效果是下图这样的。
写在最后
这个 Mermaid太牛了!Obsidian 的用户不需要安装 Mermaid,就可以在文档上绘制各种图形。如果您有任何关于 Mermaid 的问题,都可以留言给我,我会给大家答疑解惑。
总结一下就是这么个公式:
Obsidian=Word+Visio+Excel+Zotero 。
外企增资扩产凸显对中国市场信心参考消息网11月9日报道据香港南华早报网站11月8日报道,美国电子商务巨头亚马逊公司为加快海外购业务发展,在中国东部设立仓库,显示出对消费者支出的信心。报道称,亚马逊计划在中国东部
惊魂一夜,币圈迎来大洗盘?FTX暴雷,币圈地震FTX因流动性出现严重紧缩向Binance寻求帮助。为了保护用户,双方签署了一份不具约束力的意向书,Binance打算完全收购FTX。Binance有权随时退出交易。随着事态的发展
加拿大驱赶中国矿企,新一轮的国际较量正在进行中我在前几天发表了一篇文章,预测美国针对中国的新一轮制裁和布局即将到来。理由就是今年九月份中国超越德国成为世界第二的汽车出口大国,而且超越了第三名德国整整50万辆汽车,而这其中增长最
新势力车企进博会发声坚定出海走向全球化文阿晖第五届进博会将于11月10日落下帷幕,在这个促进中国高质量对外开放推动国际交流和共享发展的重要平台上,多家国际汽车巨头展示了旗下品牌丰富的进口车型,其中九成展车都是新能源汽车
73岁王薇薇穿吊带露白皙肌肤!穿黑丝大秀筷子腿,身材纤瘦状态好11月9日,有着婚纱女王之称的王薇薇在社交平台上晒出自己参加某晚会活动的照片,而她的近况也是随之被曝光,没想到她的状态还能保持的这么好,根本看不出真实年纪,而她晒出的这组美照也会引
如何挑选行车记录仪?千万要注意这4点我们买了车后,行车记录仪还是非常有必要装的。因为行车记录可以保护我们的合法权益,减少被碰瓷儿的几率同时可以保留事故发生时的有效证据,以及记录我们自驾旅行的美好过程。但市场上的产品却
水乡寻找属于自己的桃花源作者简介残雪本名邓小华,1953年生于长沙。1985年1月残雪首次发表小说,至今已有七百万字作品。其代表作有山上的小屋黄泥街苍老的浮云五香街后的情人等。残雪是作品在国外被翻译出版多
哈萨克斯坦和土耳其签署2023年军事合作计划据哈萨克斯坦国防部消息,哈萨克斯坦和土耳其国防部国际合作机构领导人10日在阿斯塔纳召开会议,签署了哈萨克斯坦和土耳其军事合作框架下的2023年度计划。会谈期间,与会人员讨论了两国国
高端MPV市场混战打响,埃尔法雷克萨斯LM地位不保?在竞争异常激烈的MPV市场,11月3号,上汽通用别克正式上市了旗下MPV别克世纪CENTURY,新车目前定位为大型科技豪华MPV,此篇文章,带大家一起走近别克世纪,看它是否能够力压
为了生活我来了头条几年了,以前都是看别人的文章,今天我也介绍一下自己吧!我是来自云南昭通的,82年的,20岁初中毕业出来打工认识了江苏盐城的老公,21岁结婚后有了儿子,虽然没有多少钱,但是
古道茶香邂逅一场0000视频加载中风吹过八千里而我终于奔向你你是我三步一回首的小巷你是我寻觅已久的诗和远方你把童话藏在村庄你把诗篇写满水乡你将木桩雕刻成时光你将古道溢满了茶香你在楼台起舞吟唱你在竹