问题标签 [tikzdevice]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
393 浏览

r - R的ggplot和tikzdevice生成的大学文档类和tikzpicture

我正在使用大学文档类,我猜这个类在某种程度上影响了使用 R 的 ggplot2 和 tikzDevice 生成的图例键和图例标签的布局。

为了重现此问题,请运行以下 R 脚本:

现在,如果我们使用 pdflatex 编译这个脚本的输出文件(out.tex),我们应该得到类似这样的结果(请注意,这里的图例完全正常):

在此处输入图像描述

现在,让我们将输出文件 (out.tex) 中的“\documentclass[10pt]{article}”行更改为“\documentclass[pdftex]{pittetd}”,并使用 pdflatex 编译 out.tex。请注意,pittetd.cls需要与 out.tex 位于同一目录中(或安装在您的系统中)。您将看到一些编译器错误,例如“缺少数字,视为零”。请忽略这些错误,因为它们与我们的问题无关,并一直按 Enter 直到生成新的 PDF 文件 (out.pdf)。输出如下所示(注意图例标签和键是重叠的):

在此处输入图像描述

我最好的猜测是问题可能是 TikZ 和pittetd 之间的一些宏定义冲突。

谁能告诉我为什么会发生这种情况以及如何解决?

编辑:

在out.tex文件中,如果我们使用pittetd文档类,我注意到如果我改变tikzpicture环境的参数,问题就解决了;换句话说,如果我们更改以下行:

至:

这应该消除重叠;但是,它也会水平拉伸绘图,这是不可取的。我想知道是否有更好的方法来解决这个问题而不必使用这个 hack(可能通过更改pittetd.cls 文件)。

0 投票
1 回答
1020 浏览

r - 减小 tikzDevice 的输出文件大小

我正在编写一个大型乳胶文档,其中包含 R 的 tikzDevice 包生成的大量图。目前,我遇到 LaTeX 错误“超出 TeX 容量”。

我已经通过遵循 Leo Liu 的答案here(我也尝试过来自同一来源的接受的答案)暂时解决了这个问题,但正如我所说,这个解决方案是暂时的,因为最终,我会添加很多在我的文档中添加更多图,每个图至少 1 兆。有人说 LuaTex 动态分配内存,所以 LuaTex 从来都不是问题(同一来源);但是,我有一个很大的文档并且可用的时间有限,因此转换为 LuaTex 不是一种选择(除非有自动转换软件)。

在我的搜索过程中,我偶然发现这篇文章谈到了同样的问题,但使用的是 matlab 的 matlab2tikz 包。解决方案是减少图中的样本数量,从而减小结果文件的大小。我查找了 R 的 tikzDevice 文档(此处此处)以获取类似的选项,但不幸的是找不到。

所以问题是:如何控制 tikzDevice 生成的图(tikzpictures)的大小?

0 投票
0 回答
700 浏览

r - getMetricsFromLatex 中的错误(TeXMetrics,详细 = 详细)

在孩子中编译 R 代码时,出现以下错误。

该文件完美无缺,直到我更改了一个我无法回忆的小细节。tikzDictionary 位于第一个包含 R 代码的子目录中。我删除了 tikZDictionary 无济于事。创建的文件为空(0 字节)。获取代码并将其编译到具有适当标题的文件中可以正常工作。我尝试将整篇论文的内容复制到一个新文件夹并在那里重新编译,但那里也出现了同样的问题。

将所有相关文件复制到新目录并尝试编译它会引发相同的错误。

1)可以尝试强制 tikZdevice 重新计算指标吗?!

2)我可以从其他地方获得正确的指标吗?

非常感谢你的帮助。


总共大约 6 个小时后,我让它开始工作。我把所有的 R 代码放在主文件中,它编译完美。“main-tikzDirectory”与“main”在同一目录中。

但是,它大约有 1000 行 R 代码(我们正在谈论我整个论文的结果方......),我宁愿将其放在单独的文件中。


一旦我将任何东西放在孩子身上,我就会得到同样的错误。此外,虽然之前在“R”控制台中引发了错误并且没有生成 tex 文件,但是当使用下面的最小示例时,错误消息被写入 tex 文件。

我提供了一个最小的例子:

孩子位于下面的一些文件夹中。

0 投票
1 回答
137 浏览

r - knitr 的 tikzDevice 错误

我正在尝试使用产生以下错误的选项重现knitr-minimal.Rnw :dev='tikz'

sessionInfo()的是

MWE是

0 投票
1 回答
183 浏览

r - Beamer:使用 tikzDevice 时在绘图中使用文档主字体

我正在尝试创建一个使用 tikz 设备进行绘图输出的 Rmd 文档模板。通常,在 Rweave (sweave) 文档中执行相同操作时,tikz 图形中的字体与文档中的字体相同,因为 tikz 接管了设置字体的文档前导。

在 Rmarkdown 中,我只能在设置块选项时实现这一点external = F。这样,tikz grpahics 就不会被预编译。

但是我想使用这种外部性,并且在最终的 pdf 输出中的图形中仍然具有相同的字体。

Heres 是一个使用 tikz 的简单投影仪演示。如何使绘图具有相同的无字体?

0 投票
0 回答
254 浏览

r - 如何解决运行命令中的 tikzDevice 错误?

我正在尝试tikzDevice在 Mac OS X 系统中使用 R 包来启用 PDF 报告中的可点击图像。为此,我使用答案的代码如何在使用 pictureGrob 创建的 PDF 中有可点击的图片?包含在此处以实现自包含,我运行此将预期的 png 图像放在正确的位置:

但是,然后我收到以下错误:

但不知道实际的错误是什么。

0 投票
1 回答
1884 浏览

r - 在 bookdown figure 环境中包含 TikZ 代码

我想在bookdown文档中添加一个 TikZ 图形,以包含一些精美的图形。

我的主要输出格式是 LaTeX,这意味着我基本上可以在 Rmarkdown 文件中逐字包含 TikZ 图形,它会渲染得很好。然而,有两个问题困扰着我:

  • 我希望 TikZ 图形成为图形环境的一部分(用于编号、标题等)。
  • 我希望能够将相同的代码呈现给 PDF (LaTeX) 和 Gitbook (HTML)。

现在我有以下块,当我渲染为 pdf 时,它可以很好地生成相关图形作为图形。

但是,代码存在两个问题:

  1. knitr渲染到 gitbook(使用and bookdown)时,我没有得到任何输出。但是,我确实得到了图形标题,如果我渲染html_document它,它也可以工作,我可以看到图形。
  2. 对于 PDF,文本使用计算机现代字体呈现。我真的很想更改它,并且 LaTeX 文档中的主要字体已经设置为其他字体。但是,由于代码是由 TikZ 引擎在本地渲染然后插入的,因此它不是完整 LaTeX 文档的一部分。我可以在渲染代码之前添加一些 TikZ 引擎包含的 LaTeX 选项、包等吗?

如果还有其他方法可以将 TikZ 代码包含在图形环境中,那么我很高兴知道。

更新:我想第二点可以通过设置文件engine.opts = list(template = "latex/tikz2pdf.tex")中包含 LaTeX 的必要设置来解决tikz2pdf.tex。该文件是使用 LaTeX 读取的,但我想用它xelatex来解析文件,因为我使用的是fontspecLaTex 包。无论如何都可以改变吗?

0 投票
0 回答
367 浏览

r - 使用 knitr 和 tikzDevice 编译速度非常慢

从 tex.stackexchange 重新发布,因为 tikzDevice 标记在那里似乎相当不活跃。希望没人介意...

我在使用 knitr 和 tikzDevice 时遇到了一些编译困难。编译工作,但我看到时间超过 10 分钟,而且这只会随着我的文档的增长而增加(我正在写我的论文,目前编译一章需要 10 分钟,还有更多的章节要来!)。

如果我将设备设置为 tikz 以外的其他设备,则没有问题。不幸的是,我需要 tikz 以便我可以在我的 R 图中使用 LaTeX。

我有一个主文件main.Rnw,其中使用例如将每一章合并为子文档\Sexpr{knit_child('chapter3.Rnw')}

在章节文件中,我通过使用例如\Sexpr{knit_child('ch3-fig-nitrogenPH.Rnw')}插入图形环境来包含 R 中的绘图等。

我的主文件为 knitr 设置指定了以下选项:

最后,另一件事表明我在某个地方出了点问题,那就是 tikz 在我尝试使用它时忽略了 pointsize aurmet,例如dev.args=list(pointsize=10)没有效果。请参阅我之前的问题https://tex.stackexchange.com/questions/408390/setting-font-size-in-tikzdevice

如果有人能指出我正确的方向来解决这个问题,我将不胜感激。

我将尝试组装一个复制问题的 MWE。

我正在使用这些软件包:

编辑:我的 sessionInfo():

0 投票
2 回答
1424 浏览

knitr - 在 RMarkdown 中使用 tikz graphdrawing 库...需要使用 lualatex 引擎,但无法使其工作

我在一个利用图表的rmd文件中有以下代码:tikz

在第二个块中更改时eval=TRUE,我收到以下错误:

从第 24-29 行退出 (testNonTufteLua.Rmd) 错误:在 '.\tikz36747a021b22.tex' 上运行 'texi2dvi' 失败

LaTeX 错误:rarygraphdrawing.code.tex:22: Package pgf 错误:您需要运行 LuaTeX 才能使用图形绘图库。

使用knitRStudio 中的按钮或使用render("testNonTufteLua.Rmd", output_format = pdf_document(keep_tex = TRUE, latex_engine = "lualatex"). 我也尝试过设置options(tikzDefaultEngine = "luatex")tikzDevice正确处理它,但它仍然不起作用。graphdrawing即使可以tikz-shapes加载库并且文档的其余部分似乎是用lualatex. 谢谢你的帮助!!

0 投票
1 回答
280 浏览

r - tikz 在 R 循环中生成空文件

我正在使用 R 中的 tikzDevice 库在乳胶中生成 tikzpicture 图。它在一张一张地制作地块时起作用。但是,当我想在循环中生成图时,我得到了空文件。以下最小示例说明了此问题:

这会产生 25 个空地块。但是,如果我在没有 for 循环的情况下运行代码(例如,将循环中的内容复制 25 次并j进行相应更改,那么它会产生绘图。这里有什么问题?