Jupyter笔记本中的公式编号

时间:2016-12-20 12:06:08

标签: python jupyter-notebook

事实是,在官方文件中Jupyter - motivating examples代表

  

将在未来版本的Jupyter笔记本中提供公式编号和参考。

我知道有很多关于这个话题的讨论。有些人声称通过一些解决方法解决了这个问题。

但对于普通用户来说,很难理解变通方法,或者黑客真正有多脏/有用。

所以我的问题是:

  1. “未来的版本”是什么意思?这是否意味着像“新月/年”之类的东西,或者“可能永远不会因为太不可能”之类的东西?

  2. 如果互联网上提供的任何变通办法对人类消费安全吗?我的意思是值得吗?因为可以使用Sphinx或其他东西来创建教程,所以会有更多的工作,但是实现一些黑客,安装插件等会有更多的工作吗?

  3. 注意:对于某些人来说,它似乎是一个需要基于意见的答案的问题,但我很确定它不是。任何建议都可以帮助我(或其他用户)作出好的/坏的决定。

3 个答案:

答案 0 :(得分:15)

我相信基本上所有与此问题相关的信息都可以在这个长期的Github问题thread中找到。

此时的谈话(此时此刻)已经持续了3。5年,并且仍处于活跃状态。重要亮点:

  • 您可以通过执行包含以下内容的单元格来打开编号:

    %%javascript
    MathJax.Hub.Config({
        TeX: { equationNumbers: { autoNumber: "AMS" } }
    });
    
  • 等式编号有extension

  • 开发人员minrk建议此扩展是正确的方法,可以合并为master(但默认情况下会关闭该功能)。

通过pip安装扩展程序:

pip install jupyter_contrib_nbextensions

通过the extensions安装Anaconda

conda install -c conda-forge jupyter_contrib_nbextensions 

使用上面提供的一个安装方式后,启用扩展程序:

jupyter contrib nbextension install --user
jupyter nbextension enable equation-numbering/main

答案 1 :(得分:5)

这是一个工作示例,可以在降价单元格中输入:

\begin{equation*}
\mathbf{r} \equiv \begin{bmatrix}
y \\
\theta
\end{bmatrix}
\label{eq:vector_ray} \tag{1}
\end{equation*}

Vector **r** is defined by equation $\eqref{eq:vector_ray}$

这是不言而喻的,但是这里有一些细节:

\label:描述方程的名称

\tag:等式旁边的标签可以是数字或字母

\eqref:引用标记的方程式

这将显示为: enter image description here

答案 2 :(得分:0)

转到Jupyter Notebook编辑器(我现在正在使用Anaconda),“编辑”菜单,最后一项“ nbextensions config”。它会打开一个页面,您可以在其中看到扩展列表,其中一个是“方程式自动编号”。启用它并重新启动笔记本。您会看到笔记本顶部显示一个按钮,用于重置方程式编号。您将需要不时按下该按钮。