You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Quarto中创建含LaTeX公式(如下标$N_t$)的图表

在Quarto中实现含LaTeX数学格式的图表(无需插入图片)

以下是几种简便可行的方案,适配不同输出格式需求:

1. 用tikz-cd绘制交换图(推荐,支持PDF/HTML)

tikz-cd是LaTeX的专用交换图工具,语法比原生Tikz简洁得多,完美支持$N_t$这类LaTeX数学符号,Quarto可直接调用。

示例代码:

---
title: 带数学符号的图表示例
format: pdf  # 也可改为html,需确保环境支持Tikz渲染
---

```{tikz, echo=FALSE}
\usetikzlibrary{cd}
\begin{tikzcd}
% 直接写LaTeX数学表达式即可
N_t \arrow[r, "增长函数"] & N_{t+1} \arrow[d, "迁移"] \\
M_t \arrow[u, "补充"] & N_{t+2}
\end{tikzcd}
只需在代码块中调用`tikz`环境,加载`cd`库后,用箭头连接节点,节点内容直接写LaTeX数学语法即可,操作比原生Tikz直观很多。

## 2. HTML输出下用Mermaid配合MathJax(仅HTML)
如果仅需HTML输出,可通过Quarto配置让Mermaid节点中的LaTeX公式被MathJax渲染:

首先在YAML头部开启MathJax:
```yaml
format:
  html:
    mathjax: true

然后编写Mermaid代码:

graph LR
A[$N_t$] -->|时间步t| B[$N_{t+1}$]
B -->|时间步t+1| C[$N_{t+2}$]

注意节点内容用$...$包裹LaTeX表达式,HTML输出时MathJax会自动渲染下标等格式。但此方法不支持PDF输出。

3. 简化版原生Tikz(通用格式)

如果需要更灵活的图表样式,可使用简化的原生Tikz语法,避免复杂的配置:

```{tikz, echo=FALSE}
% 定义节点位置和样式
\node (a) at (0,0) {$N_t$};
\node (b) at (3,0) {$N_{t+1}$};
% 绘制箭头
\draw[->] (a) -- node[above] {$\lambda$} (b);
此方法只需基础的节点和箭头定义,比全功能Tikz更易上手,同时支持所有Quarto输出格式。

内容的提问来源于stack exchange,提问作者Olivier Grimard
相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 12:23:30