Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Latex 更改R笔记本中的mathjax渲染器(带有“自包含:false”)_Latex_Rstudio_R Markdown_Mathjax_Rnotebook - Fatal编程技术网

Latex 更改R笔记本中的mathjax渲染器(带有“自包含:false”)

Latex 更改R笔记本中的mathjax渲染器(带有“自包含:false”),latex,rstudio,r-markdown,mathjax,rnotebook,Latex,Rstudio,R Markdown,Mathjax,Rnotebook,我正在创建包含方程式的R笔记本。我在Windows10、R3.5.1和rmarkdown 2.1上使用RStudio 1.2.5033。当我的R笔记本被呈现为HTML时,MathJax(v2.7.2)使用“HTML-CSS”输出处理器来呈现方程式。但是我认为“CommonHTML”输出处理器的输出看起来更好。所以我想在我的R笔记本中包含一个指令,强制MathJax使用CommonHTML输出处理器。我该怎么做 如果我使用输出格式html\u document呈现一个普通的R标记文档,我可以通过Y

我正在创建包含方程式的R笔记本。我在Windows10、R3.5.1和rmarkdown 2.1上使用RStudio 1.2.5033。当我的R笔记本被呈现为HTML时,MathJax(v2.7.2)使用“HTML-CSS”输出处理器来呈现方程式。但是我认为“CommonHTML”输出处理器的输出看起来更好。所以我想在我的R笔记本中包含一个指令,强制MathJax使用CommonHTML输出处理器。我该怎么做

如果我使用输出格式
html\u document
呈现一个普通的R标记文档,我可以通过YAML头中的
mathjax
选项来解决这个问题。例如,当以下文件呈现为HTML时,MathJax将使用CommonHTML输出处理器:

---
title: "Trouble with MathJax"
output: 
  html_document:
    mathjax: "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS_CHTML.js"
    self_contained: false    
---

\begin{equation}
  R_3 = \alpha
\end{equation}
但是,当我将
输出
格式从
html\u文档
更改为
html\u笔记本
时,此解决方案不起作用。在这种情况下,我得到如下输出:

这个等式是用CommonHTML呈现的,但是页面顶部有很多错误(注意四个要点),默认的R笔记本CSS似乎没有实现

正如中所建议的那样,使用
自包含:FALSE
渲染R笔记本时,问题似乎很普遍。但是我看不到解决这个问题的好办法。


死胡同 似乎表明我可以通过在调用
MathJax.Hub.Config()
中添加
jax
数组来指定输出处理器。但当我这样做后,我的方程式仍然通过HTML-CSS输出处理器显示。下面是显示问题的R降价文档的一个最小示例:

---
title: 'Trouble with MathJax'
output: html_notebook
---

<script type="text/x-mathjax-config"> 
  MathJax.Hub.Config({ 
    jax: ["input/TeX", "output/CommonHTML"],
  });
</script>

\begin{equation}
  R_3 = \alpha
\end{equation}
---
标题:“MathJax的麻烦”
输出:html\U笔记本
---
MathJax.Hub.Config({
jax:[“输入/TeX”,“输出/CommonHTML”],
});
\开始{等式}
R_3=\alpha
\结束{方程}
调用
MathJax.Hub.Config()
在这里似乎没有任何作用。在Chrome和Edge中,公式都是通过HTML-CSS而不是CommonHTML呈现的。如何将呈现更改为普通HTML?


相关职位
  • 一年前的帖子,是关于Jupyter笔记本的,但它是相关的。它还没有收到答复
  • 主要通过将“HTML-CSS”改为“CommonHTML”来调整脚本,似乎没有任何效果。



解决方案只是省略YAML标题中的
自包含
行,或者等效地将
自包含
设置为
。以下是用户选择mathjax渲染器的R笔记本的一个最小示例:

---
title: "Self-contained notebook with non-default Mathjax config"
output:
  html_notebook:
    mathjax: "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS_CHTML.js"
---

$R_3 = 2$.
当文件呈现为HTML时,方程式将使用CommonHTML显示,而不是HTML-CSS。Mathjax脚本包含在生成的“nb.html”文件中

我对此感到惊讶,因为
rmarkdown::html_document()
的文档说“即使对于自包含的文档,MathJax仍然是从外部加载的(这是必要的,因为它的大小)。”但指出只有从本地文件加载MathJax时,限制才适用。所以也许这不应该是一个惊喜

旁注:rmarkdown包使用的默认Mathjax配置由
rmarkdown:::Mathjax_config()
给出。从rmarkdown v2.1开始,函数返回“MathJax.js?config=TeX-AMS-MML_HTMLorMML”