Mermaid 教程

Mermaid 教程

Mermaid 介绍

Mermaid 是一个用于生成流程图、时序图、甘特图等图表的 JavaScript 库。它使用类似于 Markdown 的文本语法,使得创建图表变得简单直观。以下是一个简单的 Mermaid 教程,介绍如何使用 Mermaid 创建流程图、时序图和甘特图。

安装 Mermaid

可以通过以下方式在你的项目中安装 Mermaid:

npm install mermaid

或者直接在 HTML 文件中引入 Mermaid 的 CDN:

<script src="https://cdn.jsdelivr.net/npm/mermaid@11"></script>

Mermaid教程实例

创建流程图

使用 Mermaid 创建流程图的语法类似于 Markdown,

Mermaid 的语法:

  • graph TD; 表示创建一个有向图,从上到下的方向。
  • 节点通过 --> 连接,表示流程的顺序。
  • 判断条件通过 -- 条件 --> 表示,条件的两边分别连接两个可能的步骤。
  • 方形节点表示流程步骤,圆形节点表示开始和结束。

如下所示:

graph TD;A[开始] -->|条件1| B(流程步骤1);B -->|条件2| C(流程步骤2);C --> D{条件3};D -->|是| E(结束);D -->|否| F(流程步骤3);F --> E;
条件1
条件2
开始
流程步骤1
流程步骤2
条件3
结束
流程步骤3

上述代码创建了一个简单的流程图,其中包含开始、流程步骤、条件、判断和结束。

横向流程图
graph LR
A[长方形] -- 链接 --> B((圆))
A --> C(圆角长方形)
B --> D{菱形}
C --> D
链接
长方形
圆角长方形
菱形

创建时序图

时序图用于展示事件在时间轴上的顺序。以下是一个简单的时序图示例:

sequenceDiagramparticipant A as Aliceparticipant B as BobA->>B: 消息1B->>A: 消息2
Alice Bob 消息1 消息2 Alice Bob

创建甘特图

甘特图用于展示任务的时间安排。以下是一个简单的甘特图示例:

gantttitle 项目计划section 任务1完成任务1 :a1, 2024-01-11, 30d任务2 :after a1 , 20dsection 任务2任务3 : 12d完成任务4 : 20d
2024-01-14 2024-01-21 2024-01-28 2024-02-04 2024-02-11 2024-02-18 2024-02-25 2024-03-03 2024-03-10 2024-03-17 2024-03-24 2024-03-31 完成任务1 任务2 任务3 完成任务4 任务1 任务2 项目计划

这个示例中,你可以定义项目计划中的不同任务,包括开始时间、持续时间等信息。

类图

Mermaid 也支持创建类图。以下是一个简单的 Mermaid 类图的示例:

classDiagramclass Animal {+name: string+makeSound(): void}class Dog {+breed: string+bark(): void}class Cat {+color: string+meow(): void}Animal <|-- DogAnimal <|-- Cat
Animal
+name: string
+makeSound()
Dog
+breed: string
+bark()
Cat
+color: string
+meow()

git 图

Mermaid 支持创建 Git 图,用于展示 Git 分支、合并、提交等操作。以下是一个简单的 Mermaid Git 图的示例:

    gitGraphcommitcommitbranch developcommitcommitcommitcheckout maincommitcommit

journey 图

下面是一个简单的 Mermaid Journey 图的示例,表示一个过程的流程:

journeytitle My Journeysection Getting StartedMake tea: 5: MeGo upstairs: 3: MeDo work: 1: Me, Catsection Additional StepsGo downstairs: 5: MeSit down: 5: Me
Cat Me Step 1
Getting Started
Getting Started
Step 1
A --> B
A --> B
Me
Make tea
Make tea
Me
Go upstairs
Go upstairs
Me Cat
Do work
Do work
Additional Steps
Additional Steps
Me
Go downstairs
Go downstairs
Me
Sit down
Sit down
Conclusion
Conclusion
F --> G
F --> G
My Journey

在这个示例中:

  • journey 表示 Journey 图的开始。
  • title 用于设置 Journey 的标题。
  • section 定义了 Journey 的不同阶段。
  • A(Start) --> B(Step 1) 表示 Journey 从 A 到 B 的步骤,带有标签 “Step 1”。

你可以根据需要定制标签、步骤和整体 Journey 结构。

以上是一个简单的 Mermaid 教程,希望能够帮助使用 Mermaid 创建流程图、时序图和甘特图。更多详细信息和高级用法,请参考 Mermaid 的官方文档:Mermaid Documentation。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/612523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt中QByteArray之元素访问

访问QByteArray类对象中的某个元素主要有4种方式,分别为[]、at()、 data[]和constData[]。其中&#xff0c;[]和data]]方式为可读可写&#xff0c;at()和constData[]方式仅为可读。如果只是进行读操作&#xff0c;则通过at()和constData[]方式的访问速度最快&#xff0c;因为避…

wxWidgets实战:使用mpWindow绘制阻抗曲线

选择模型时&#xff0c;需要查看model的谐振频率&#xff0c;因此需要根据s2p文件绘制一张阻抗曲线。 如下图所示&#xff1a; mpWindow 左侧使用mpWindow&#xff0c;右侧使用什么&#xff1f; wxFreeChart https://forums.wxwidgets.org/viewtopic.php?t44928 https://…

【MMC子系统】四、MMC控制器驱动层

我的圈子&#xff1a; 高级工程师聚集地 我是董哥&#xff0c;高级嵌入式软件开发工程师&#xff0c;从事嵌入式Linux驱动开发和系统开发&#xff0c;曾就职于世界500强企业&#xff01; 创作理念&#xff1a;专注分享高质量嵌入式文章&#xff0c;让大家读有所得&#xff01; …

Keil编译生成的bin文件自动以版本号命名

Keil编译程序生成bin文件时&#xff0c;如何自动以版本号命名bin文件 一、目的二、方法三、实现过程1、脚本形式2、可执行文件形式 一、目的 Keil编译程序时&#xff0c;生成的Hex/Bin文件名字是根据Keil中工程配置里定的名字命名。通常代码里会有一个字段专门用来定义软件版本…

权限维持篇

一、Windows 1、 不死马权限维持 1.1 概述 <?php ignore_user_abort(); //关掉浏览器&#xff0c;PHP脚本也可以继续执行. set_time_limit(0);//通过set_time_limit(0)可以让程序无限制的执行下去 $interval 5; // 每隔*秒运行 do { $filename test.php; if(file_exi…

vue3.2引用unplugin-vue-components插入,解放开发中import组件

目录 前言引用unplugin-vue-components插件的优缺点优点缺点 unplugin-vue-components插件引入安装插件配置vite配置更新TypeScript配置使用代码位置 总结Q&A 前言 unplugin-vue-components是一个用于Vue.js项目的插件&#xff0c;特别适用于Vite和Webpack构建工具。它的主…

Java零基础教学文档第三篇:JDBC

今日新篇章 【JDBC】 【主要内容】 JDBC概述 使用JDBC完成添加操作 使用JDBC完成更新和删除 DBUtils的简单封装 使用JDBC完成查询 使用JDBC完成分页查询 常用接口详解 JDBC批处理 SQL注入问题 事务处理解决转账问题 连接池 使用反射对DBUtils再次的封装 BaseDAO的封…

第六篇 提升网页性能:深入解析HTTP请求优化策略(二)

文章目录 1 异步请求队列管理1.1 工作原理过程实现 1.2 优点1.3 示例 2 请求取消2.1. 工作原理2.2 优点2.3 实施细节2.4 axios取消请求2.5 fetch取消请求 HTTP请求优化是提高Web应用性能和用户体验的关键环节&#xff0c;异步请求队列管理和请求取消是其中的两个重要策略。以下…

Django报错处理

django.template.exceptions.TemplateDoesNotExist: django/forms/widgets/text.html django.template.exceptions.TemplateDoesNotExist: django/forms/widgets/number.html以上报错是pycharm中创建虚拟环境之后把原本自带的templates文件删除&#xff0c;重新在app01下面创建…

Unity Delaunay三角剖分算法 动态生成

Unity Delaunay三角剖分算法 动态生成 Delaunay三角剖分Delaunay三角剖分 定义Delaunay 边Delaunay 空圆特性 Delaunay 三角形Delaunay 最大化最小角特性 Delaunay 三角形特征Delaunay 算法Delaunay Lawson算法Delaunay Bowyer-Watson算法 Unity Delaunay三角剖分 应用Unity 工…

Linux——firewalld防火墙(二)

一、firewalld高级配置 1、IP地址伪装 地址伪装&#xff08;masquerade):通过地址伪装&#xff0c;NAT设备将经过设备的包转发到指定接收方&#xff0c;同时将通过的数据包的源地址更改为其自己的接口地址。当返回的数据包到达时&#xff0c;会将目的地址修改为原始主机的地址…

CMU15-445-Spring-2023-Project #2 - 前置知识(lec07-010)

Lecture #07_ Hash Tables Data Structures Hash Table 哈希表将键映射到值。它提供平均 O (1) 的操作复杂度&#xff08;最坏情况下为 O (n)&#xff09;和 O (n) 的存储复杂度。 由两部分组成&#xff1a; Hash Function和Hashing Scheme&#xff08;发生冲突后的处理&…

Red Hat 8.0 本地源配置方法

mkdir -p /tmp/yum mv /etc/yum.repos.d/* /tmp/yum mkdir -p /media/cdrom mount /dev/cdrom /media/cdrom df -Th生成yum配置 cat << EOF >> /etc/yum.repos.d/rhel8.repo [BaseOS] nameBaseOS baseurlfile:///media/cdrom/BaseOS enabled1 gpgcheck0[App…

【MySQL】MySQL版本8+ 窗口函数 Lead 的两种使用

力扣题 1、题目地址 1709. 访问日期之间最大的空档期 2、模拟表 表&#xff1a;UserVisits Column NameTypeuser_idintvisit_datedate 该表没有主键&#xff0c;它可能有重复的行该表包含用户访问某特定零售商的日期日志。 3、要求 假设今天的日期是 ‘2021-1-1’ 。 …

git拉取某远端分支创立为本地新分支

要从远程仓库拉取一个特定的分支并在本地创建一个新的分支&#xff0c;你可以使用以下步骤&#xff1a; 首先&#xff0c;确保你的本地仓库的远程分支信息是最新的。这可以通过执行git fetch命令完成。这个命令会从远程仓库获取最新的分支和数据&#xff0c;但不会自动合并或修…

jackson相关注解

JsonIgnoreProperties JsonIgnoreProperties(value { "prop1","prop2" })用来修饰Pojo类, 在序列化和反序列化的时候忽略指定的属性, 可以忽略一个或多个属性. JsonIgnoreProperties(ignoreUnknown true)用来修饰Pojo类, 在反序列化的时候忽略那…

神经辐射场(NeRF)概述

神经辐射场&#xff08;NeRF&#xff09;是一种用于三维场景重建的深度学习算法。它能够从一组稀疏的二维图片中重建出高质量的三维场景。 以下是对NeRF算法的原理和实现方法的详细解释&#xff1a; NeRF算法原理&#xff1a; 基本概念&#xff1a; NeRF算法基于光线追踪的原理…

Unified-IO 2 模型: 通过视觉、语言、音频和动作扩展自回归多模态模型。给大家提前预演了GPT5?

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

从0到1实现html文件转换为markdown文档(进度0.1)

Spider-Man 前言准备环境1、node.js2、git 执行指令顺序报错及其解决方案一、npm 错误&#xff01;可以在以下位置找到此运行的完整日志解决方案 二、没有修改权限解决方案&#xff1a; 注意事项总结 前言 当我们处理文档时&#xff0c;常常会遇到将HTML文档转换为Markdown文档…

残疾人聋哑人专用起床叫醒器震动起床提醒器

残疾人聋人专用起床叫醒器震动起床提醒器是为特殊教育学校提供的一种安全防护设施&#xff0c;符合特教行業標準8.7電教、信息網路設備的規定&#xff0c;系统采用了全自动IP网络控制、每个设备内带有IP地扯能独立控制每一个宿舍和教室&#xff0c;在同一时间内&#xff0c;多功…