文章Front-matter

博客文章 Front-matter的Markdown使用

如果有文章(例如:转载文章)不需要显示版权,可以在文章 Front-matter 单独设置

1
copyright: false

从Butterfly3.0.0开始,支持对单独文章设置版权信息,可以在文章 Front-matter 单独设置

1
2
3
4
copyright_author: xxxx
copyright_author_href: https://xxxxxx.com
copyright_url: https://xxxxxx.com
copyright_info: 此文章版权归 xxxxx 所有,如有转载,请注明来自原作者

注意

代码块不要在列表中

==代码块不能是列表项==,否则会乱码!!!

image-20260120103943108

可以用enter+shift使得代码块不属于列表又可以完成缩进:

image-20260120104429726

使用Mermaid画图

Markdown中可以绘制流程图、序列图、饼图、甘特图和类图等图形。

语法

Mermaid代码通常放在一个代码块中,代码块的语法如下:

1
2
3
```mermaid
[Mermaid代码]
```

使用方法:在 Markdown 中,敲击三个后写下mermaid回车即可。

展示如下图:

展示图

流程图graph

流程图用于展示流程步骤和关系,支持多种布局方向。

语法说明

  • graph [方向]:定义图表方向(LR 左右,TB 上下,RL 右左,BT 下上)
  • 节点表示:id[文本](默认矩形)、id(文本)(圆角矩形)、id{文本}(菱形)、id((文本))(圆形)等
  • 连接线:-->(实线箭头)、---(实线无箭头)、-.->(虚线箭头)等,可添加标签(-->|标签|

示例

graph TD
    A[开始] --> B{是或否}
    B -->|是| C[执行任务]
    B -->|否| D[结束]
    C --> D
graph LR
    产品[产品]
    产品 -->|m| 构成{构成}
    构成 -->|n| 零件[零件]
    零件 -->|n| 存储{存储}
    零件 -->|n| 消耗{消耗} -->|m| 材料
    存储 -->|1| 仓库[仓库]
    
    产品号((产品号)) --- 产品
    产品名((产品名)) --- 产品
    预算((预算)) --- 产品
    零件数((零件数)) --- 构成
    零件号((零件号)) --- 零件
    零件名((零件名)) --- 零件
    存储量((存储量)) --- 存储
    仓库 --- 仓库号((仓库号))
    仓库 --- 面积((面积))
    仓库 --- 库管员((库管员))

    消耗 --- 存储量
    材料 --- 材料号((材料号))
    材料 --- 材料名((材料名))
    材料 --- 单位((单位))
    材料 --- 单价((单价))

流程图进阶

参数说明:

  • fill 背景色
  • stroke 边框色
  • stroke-width 边框粗细
  • color 文字颜色
  • opacity 透明度 0–1
  • rx/ry 圆角半径

示例:

graph TD
    A[开始] --> B{是或否}
    B -->|是| C[执行任务]
    B -->|否| D[结束]
    C --> D
%% 直接给节点填色、描边、改字色
style A fill:#d73027,stroke:#333,stroke-width:2px,color:#fff
style B fill:#fc8d59,stroke:#333,stroke-width:2px
style C fill:#fee08b,stroke:#333,stroke-width:2px
style D fill:#91bfdb,stroke:#333,stroke-width:2px

论文黑白样式

  1. 定义一个样式,名字叫 bigfont

    fill:#fff → 背景是 白色

    stroke:#000 → 边框是 黑色

    stroke-width:1.5px → 边框粗细 1.5px

    font-size:28px → 字体大小 28 号(超大)

    font-weight:bold → 字体 加粗

  2. 把上面定义的「bigfont 样式」,应用到所有这些节点上

1
2
    classDef bigfont fill:#fff,stroke:#000,stroke-width:1.5px,font-size:28px,font-weight:bold;
    class 写所有的结点 bigfont;

序列图sequenceDiagram

展示对象之间的交互时序,常用于系统交互流程。

语法说明

  • participant 参与者:定义参与对象
  • 消息传递:A->B: 消息内容(实线箭头)、A-->B: 消息内容(虚线箭头,如返回)
  • 激活状态:activate A(激活对象,显示生命线)、deactivate A(取消激活)

示例

sequenceDiagram
    participant A
    participant B
    A->>B: 发送消息
    B->>A: 回复消息

黑白加大字体

部分作用
%%{init: {...}}%%Mermaid 初始化配置块,在图表渲染前执行
'theme': 'base'使用基础主题(空白画布,便于完全自定义)
'themeCSS': '...'注入自定义 CSS,覆盖所有默认样式

%%{init: {'theme': 'base', 'themeCSS': 'text, tspan { fill: #000 !important; font-size: 22px !important; font-weight: bold !important; } line { stroke: #000 !important; } .actor { fill: #fff !important; stroke: #000 !important; stroke-width: 2px !important; } .labelBox { fill: #fff !important; stroke: #000 !important; }' }}%%

%%{init: {'theme': 'base', 'themeCSS': 'text, tspan { fill: #000 !important; font-size: 22px !important; font-weight: bold !important; } line { stroke: #000 !important; } .actor { fill: #fff !important; stroke: #000 !important; stroke-width: 2px !important; } .labelBox { fill: #fff !important; stroke: #000 !important; }'
}}%%
sequenceDiagram
    participant A as 参与者A
    participant B as 参与者B
    
    A->>B: 消息示例
    B-->>A: 返回响应
    
    alt 条件分支
        A->>B: 分支消息
    end

饼图Pie

展示数据占比关系。

语法说明

  • pie 开头
  • title 标题
  • 标签: 数值 定义各部分

示例

pie
    title 网站用户来源
    "直接访问" : 30
    "搜索引擎" : 50
    "外部链接" : 15
    "其他" : 5

甘特图gantt

用于项目进度规划,展示任务时间安排。

语法说明

  • dateFormat:日期格式(如 YYYY-MM-DD
  • section 模块名:分组任务
  • 任务格式:任务名 : 状态, 任务ID, 开始日期, 结束日期(状态可选 done/active 等)

示例

gantt
    dateFormat  YYYY-MM-DD

    section 现有任务
    已完成任务           :done,    des1, 2025-01-06,2025-01-08
    进行中任务           :active,  des2, 2025-01-09, 3d
    待办任务             :         des3, after des2, 5d

    section 新增任务
    新任务1              :         des4, after des3, 5d
    新任务2              :         des5, after des4, 5d

思维导图mindmap

语法说明

  • 根节点(中心主题)用 root((内容)) 定义((( )) 是固定格式,确保居中显示)
  • 分支层级通过空格缩进区分(建议用 2-4 个空格,同一层级缩进一致):
    • 无缩进:一级分支(直接从根节点延伸)
    • 缩进 2-4 空格:二级分支(从一级分支延伸)
    • 缩进更多:三级、四级分支(以此类推)
    • 不支持 Tab 键,建议用 2-4 个空格统一缩进,否则会导致层级混乱
    • 分支层级建议不超过 4 级
mindmap
  root((技能check list))
    硬性
      编程技能: SQL、Python/R、Excel
      统计学知识
        假设检验: 参数检验、非参数检验、置信区间
        数据分布、相关性、贝叶斯等
        大数定律、中心极限定理等
      建模知识
        数据处理方法: 连续/离散数据、样本不平衡
        聚类: K-means、DBSCAN等
        回归
        分类
        时间序列分析: AMAR、ARIMA、prophet等
        transformer、bert
      因果推断
        辛普森悖论
        ATE、ATT、CATE、HTE
        IV、DID、PSM、RDD、DRL、DML、Uplift Model、Casual forest等
      数据解读&本质提炼
      报告撰写&数据展示
    业务
      常见方法: 维度下钻分析、归因分析、路径分析、触点分析、用户画像分析; 其他(RFM、生命周期等)
      业务分析问题
        指标体系搭建
        实验分析
        问题归因
        专项分析: 机会点、价值论证
      业务理解
    软性
      商业sense
      听信息
      拆解信息
      汇报信息
      抗压能力
      时间管理

思维导图实现2

用markdown的graph LR

graph LR(左右布局)+ 分支分组

graph LR
    %% 根节点(居中,作为核心)
    Root["🎯 技能check list"]
    
    %% 左侧分支:硬性技能(向左展开,层级清晰)
    Root --> Hard["🔧 硬性技能"]
    Hard --> Code["编程技能"]
    Code --> code[SQL、Python/R、Excel]
    
    Hard --> Stat["统计学知识"]
    Stat -->|1| Test[假设检验]
    Test --> Param[参数检验]
    Test --> NonParam[非参数检验]
    Test --> CI[置信区间]
    Stat -->|2| Dist[数据分布、相关性、贝叶斯等]
    Stat -->|3| Law[大数定律、中心极限定理等]
    
    Hard --> Model["建模知识"]
    Model -->|1| Process[数据处理方法]
    Process --> Cont[连续/离散数据]
    Process --> Imb[样本不平衡]
    Model --> Cluster[聚类]
    Model --> Reg[回归]
    Model --> Class[分类]
    Model --> TS[时间序列分析]
    Cluster --> cluster[K-means、DBSCAN等]
    TS --> ARIMA[AMAR、ARIMA、Prophet等]
    TS --> Trans[Transformer、BERT]
    
    Hard --> Causal["因果推断"]
    Causal --> Simp[辛普森悖论]
    Causal --> Metric[ATE、ATT、CATE、HTE]
    Causal --> Method[先掌握:IV、DID、PSM、RDD]
    Method --> method[DRL、DML、Uplift Model、Casual forest等]
    
    Hard --> Ana[数据解读&提炼]
    Hard --> Rep[报告撰写&展示]
    
    %% 右侧分支1:业务技能(向右展开)
    Root --> Bus["💼 业务技能"]
    Bus --> Meth["常见分析方法"]
    Meth --> Drill[维度下钻分析]
    Meth --> Reason[归因分析]
    Meth --> Path[路径分析]
    Meth --> Touch[触点分析]
    Meth --> Portrait[用户画像分析]
    Meth --> MethOthers[还有一些别的:RFM、生命周期等]
    
    Bus --> Prob["业务分析问题"]
    Prob --> Ind[指标体系搭建]
    Prob --> Exp[实验分析]
    Prob --> Attr[问题归因]
    Prob --> Spec[专项分析]
    Spec --> spec[机会点、价值论证]
    
    Bus --> Under[业务理解]
    
    %% 右侧分支2:软性技能(与业务技能并列,更舒展)
    Root --> Soft["🌟 软性技能"]
    Soft --> Sense[商业sense]
    Soft --> Listen[信息倾听]
    Soft --> Split[信息拆解]
    Soft --> ReportExp[汇报表达]
    Soft --> Stress[抗压能力]
    Soft --> Time[时间管理]
    
    %% 样式优化:颜色+边框,区分度拉满
    classDef rootColor fill:#fff3e0,stroke:#ff9800,stroke-width:2px,font-weight:bold
    classDef hardColor fill:#e8f5e8,stroke:#4caf50,stroke-width:1px
    classDef busColor fill:#e3f2fd,stroke:#2196f3,stroke-width:1px
    classDef softColor fill:#fce4ec,stroke:#e91e63,stroke-width:1px
    
    class Root rootColor
    class Hard,Code,code,Stat,Test,Param,NonParam,CI,Dist,Law,Model,Process,Cont,Imb,Cluster,cluster,Reg,Class,TS,ARIMA,Trans,Causal,Simp,Metric,Method,method,Ana,Rep hardColor
    class Bus,Meth,Drill,Reason,Path,Touch,Portrait,MethOthers,Prob,Ind,Exp,Attr,Spec,spec,Under busColor
    class Soft,Sense,Listen,Split,ReportExp,Stress,Time softColor

使用 Markdown 编写文档用什么软件

  1. Typora 核心优势:所见即所得(WYSIWYG)界面,实时渲染 Markdown 语法,支持表格、代码块、数学公式(LaTeX)、任务列表等。 导出能力:直接导出为 PDF、HTML、Word、ePub 等格式,适合生成报告或电子书。 价格:买断制 89 元人民币,支持 Windows/macOS/Linux。 适用场景:个人写作、技术文档、学术论文。

  2. VS Code + 插件 核心优势:代码编辑器的强大扩展性,通过插件支持 Markdown 语法高亮、实时预览、TOC 生成。 插件: Markdown All in One:快捷键和格式转换工具。 Markdown PDF:一键导出 PDF(需安装 LaTeX 环境)。 适用场景:开发者、技术文档撰写者。 缺点:不能通过剪切板粘图,需要手动上传图片。这是我特别常用的一个功能,所以需要一个更好的软件。

  3. MarkText 核心优势:开源免费,支持实时预览、多主题切换(如 Material Dark)、三种编辑模式(源码 / 打字机 / 专注)。 特色功能:直接粘贴图片到文档,支持数学公式(KaTeX)和 Mermaid 图表。 导出能力:导出 HTML 和 PDF,适合轻量级文档。 适用场景:学生、自由职业者、开源项目贡献者。 缺点:现在好像没人维护了,最新版本还是v0.17.1。

Typora

侧边栏大纲

大纲视图(可折叠)

默认展开标题级数

写作规范

弄个ob插件

chinese-copywriting-guidelines/README.zh-Hans.md at master · sparanoid/chinese-copywriting-guidelines

快速打出「」

Windows,微软输入法

  1. 点击开始菜单,选择「设置」,然后点击「时间和语言」

  2. 在时间和语言窗口中,选择「语言和区域」

  3. 在语言和区域窗口中,找到并点击中文输入法(例如“中文(简体,微软拼音)”)。

  4. 点击右侧三个点,找到「语言选项」按钮,进入中文输入法的详细设置。

  5. 看到微软拼音,点击右侧三个点,找到「键盘选项」

  6. 在键盘选项窗口中,点击「词库和自学习」

  7. 在词库和自学习窗口中,点击「添加或编辑自定义短语」

  8. 点击「添加」按钮。

    • 拼音:jz

    • 位置:1

    • 短语:「」

设置完成后,当你在「中文打字时」输入之前设置的拼音(例如「jz」)时,候选项第一个就是直角引号「」。

公式LaTeX

最常用的 LaTeX 公式符号,按照使用场景分类

  1. 基础运算
效果LaTeX示例
+$a + b$
-$a - b$
\times\cdot$a \times b$,$a \cdot b$
除(分数)\frac{}{}$\frac{a}{b}$
除(斜线)/$a/b$
乘方^$a^{b}$
下标_$a_{i}$
根号\sqrt{}$\sqrt{x}$
n次根号\sqrt[n]{}$\sqrt[3]{x}$
  1. 关系符
效果LaTeX示例
等于=$a = b$
大于>$a > b$
小于<$a < b$
大于等于\ge\geq$a \ge b$
小于等于\le\leq$a \le b$
不等于\neq$a \neq b$
约等于\approx$a \approx b$
  1. 求和、积分、乘积
效果LaTeX示例
求和\sum_{i=1}^{n}$\sum_{i=1}^{n} x_i$
积分\int_{a}^{b}$\int_{a}^{b} f(x),dx$
乘积\prod_{i=1}^{n}$\prod_{i=1}^{n} i$
  1. 常用希腊字母
效果LaTeX
α\alpha
β\beta
γ\gamma
δ\delta
Δ\Delta
ε\epsilon
θ\theta
λ\lambda
μ\mu
π\pi
σ\sigma
Σ\Sigma
φ\phi
ω\omega
Ω\Omega
  1. 集合与逻辑
效果LaTeX示例
属于\inx \in \mathbb{R}
包含于\subsetA \subset B
子集或等于\subseteqA \subseteq B
空集\emptyset\emptyset
实数集\mathbb{R}\mathbb{R}
所有\forall\forall x > 0
存在\exists\exists y
推出\Rightarrowx=1 \Rightarrow x^2=1
等价\Leftrightarrowx+1=2 \Leftrightarrow x=1
  1. 括号与自动缩放
效果LaTeX示例
自适应小括号\left( ... \right)$\left( \frac{a}{b} \right)$
自适应中括号\left[ ... \right]$\left[ x + y \right]$
自适应大括号\left\{ ... \right\}$\left{ 1,2,3 \right}$
绝对值\lvert x \rvert 或 `x
  1. 公式中的文字与样式
效果LaTeX示例
公式内普通文字\text{...}$\text{文字}$
粗体(数字/字母)\mathbf{}$\mathbf{x} = (1,2)$
黑板粗体(数集)\mathbb{}$\mathbb{R}^n$
向量箭头\vec{v}$\vec{v} = (1,2)$
上划线(均值)\bar{x}$\bar{x} = 5$