我开始使用令人敬畏的knitr包,虽然我喜欢使用tikz图形的想法,但它并不总是非常实用(耗时)。因此,我最终在老旧的pdf设备和tikz之间来回切换。在这两种设备中,数学表达式的处理方式通常不同;我发现在tikz中使用LaTeX语法要好得多,但在pdf中很难阅读,反之亦然。
是否有人尝试提供一个框架来从一种表示法无缝切换到另一种表示法?类似于translate(x, from="plotmath", to="tex", ams=TRUE, ...)函数,它可以通过knitr在内部连接到正在使用的设备。该如何去做呢?
发布于 2012-01-16 22:16:09
对我来说这听起来很难。从plotmath到LaTeX的转换可能会更容易,例如,用\alpha替换alpha,用x_{i}替换x[i],等等,但另一种方法可能很难,因为plotmath只是LaTeX表达式的“子集”。
如果tikz图形的生成非常耗时,您可以考虑打开缓存(就像我在knitr手册和许多其他示例文档中所做的那样)。一旦生成了tikz图,如果使用cache=TRUE,它将不会在下一次重新生成,因此它将非常快,如果您还使用分块选项external=TRUE将tikz转换为pdf,则速度会更快。
我可能不使用tikz的唯一原因是当绘图太大时,正如我在手册中所解释的那样。除此之外,tikz总是比我更可取。不过,这有点离题。
https://stackoverflow.com/questions/8877813
复制相似问题