R tikzDevice:找不到LaTeX
我无法使R包R tikzDevice:找不到LaTeX,r,latex,tikzdevice,R,Latex,Tikzdevice,我无法使R包tikzDevice运行。我已经安装了,而且我在制作像via TeXworks这样的文档时没有问题 不幸的是,通过tikzDevice导出绘图不起作用,例如,以下代码生成错误消息: library(tikzDevice) library(ggplot2) #For some reason, Rstudio needs to know the time zone... options(tz="CA") #Dummy data for the plot y <- exp(seq(1
tikzDevice
运行。我已经安装了,而且我在制作像via TeXworks这样的文档时没有问题
不幸的是,通过tikzDevice导出绘图不起作用,例如,以下代码生成错误消息:
library(tikzDevice)
library(ggplot2)
#For some reason, Rstudio needs to know the time zone...
options(tz="CA")
#Dummy data for the plot
y <- exp(seq(1,10,.1))
x <- 1:length(y)
data <- data.frame(x = x, y = y)
#Create a .tex file that will contain your plot as vectors
#You need to set the size of your plot here, if you do it in LaTeX,
#font consistency with the rest of the document will be lost
tikz(file = "plot_test.tex", width = 5, height = 5)
#Simple plot of the dummy data using LaTeX elements
plot <- ggplot(data, aes(x = x, y = y)) +
geom_line() +
#Space does not appear after Latex
ggtitle( paste("Fancy \\LaTeX ", "\\hspace{0.01cm} title")) +
labs( x = "$x$ = Time", y = "$\\Phi$ = Innovation output") +
theme_bw()
#This line is only necessary if you want to preview the plot right after compiling
print(plot)
#Necessary to close or the tikxDevice .tex file will not be written
dev.off()
我在Google或此处找不到有关该问题的讨论,因此我希望您能提供帮助。您的LaTex文件未设置在库中。在我的情况下,是pdflatex文件。您可以添加pdftex、xetex或luatex文件 轻松尝试: 如果可能的话,试着重新安装你的库或latex,这应该是一种简单的清洁安装方法 手动设置变量 在Linux上: 与 我生成输出
"/usr/bin/pdflatex"
这是我到latex文件的路径,这是你的案例中缺少的。所以我们需要加上它
您可以使用终端中的命令检查Latex文件的位置:
whereis pdflatex
因此,如果您找到了文件的路径,请将其设置为:
options("tikzLatex"='/usr/bin/pdflatex')
窗口
我不是windows用户,所以我猜也是这样。Windows上查找文件的类似命令是where
命令
设置变量应该是相同的。如果有人能证实这一点,那就太好了
编辑:Mason Malone在问题的评论中提供了windows解决方案
对于Windows用户,它的工作方式与Windows用户相同。打开Windows命令提示符(开始>键入“命令提示符”>enter)
键入以下内容:其中pdflatex
复制它提供给您的文件路径,例如:C:\Users\user1\AppData\Local\Programs\MiKTeX 2.9\MiKTeX\bin\x64\pdflatex.exe
在R中,键入以下内容:options(“tikzLatex”=“C:/Users/user1/AppData/Local/Programs/MiKTeX 2.9/MiKTeX/bin/x64/pdflatex.exe”)
请注意,对于通过命令提示符给出的文件路径,它有反斜杠
,但在R中,我们必须键入前斜杠/
“您的LaTex文件未在库中设置。在我的情况下,是pdflatex文件。您可以添加pdftex、xetex或luatex文件
轻松尝试:
如果可能的话,试着重新安装你的库或latex,这应该是一种简单的清洁安装方法
手动设置变量
在Linux上:
与
我生成输出
"/usr/bin/pdflatex"
这是我到latex文件的路径,这是你的案例中缺少的。所以我们需要加上它
您可以使用终端中的命令检查Latex文件的位置:
whereis pdflatex
因此,如果您找到了文件的路径,请将其设置为:
options("tikzLatex"='/usr/bin/pdflatex')
窗口
我不是windows用户,所以我猜也是这样。Windows上查找文件的类似命令是where
命令
设置变量应该是相同的。如果有人能证实这一点,那就太好了
编辑:Mason Malone在问题的评论中提供了windows解决方案
对于Windows用户,它的工作方式与Windows用户相同。打开Windows命令提示符(开始>键入“命令提示符”>enter)
键入以下内容:其中pdflatex
复制它提供给您的文件路径,例如:C:\Users\user1\AppData\Local\Programs\MiKTeX 2.9\MiKTeX\bin\x64\pdflatex.exe
在R中,键入以下内容:options(“tikzLatex”=“C:/Users/user1/AppData/Local/Programs/MiKTeX 2.9/MiKTeX/bin/x64/pdflatex.exe”)
请注意,对于通过命令提示符给出的文件路径,它有反斜杠
,但在R中,我们必须键入前斜杠/
“这可能太晚了,但这里有一个更持久的系统范围解决方案
这是针对Linux的,但一般的想法也适用于Windows
错误的原因是R无法找到pdflatex
的位置。通过将pdflatex的目录添加到PATH
环境变量中,可以告诉R pdflatex在哪里。你必须以R能看到的方式来做
首先,找到pdflatex的安装目录。如果您不知道它在哪里,下面的命令将告诉您它在哪里
which pdflatex
在我的例子中,上面的命令给出了/usr/local/texlive/2018/bin/x86_64-linux/pdflatex
现在我们必须将它添加到PATH
环境变量中,以便任何想要执行pdflatex的程序(不仅仅是R)都可以找到它。我们可以通过更新路径
让所有程序/用户看到来实现这一点。执行下面的命令来完成这个任务
echo "export PATH=\"\$PATH:<pdflatex directory>\"" | sudo tee /etc/profile.d/latex_path.sh
要使更改可用而无需注销并再次登录,请执行:
source /etc/profile.d/latex_path.sh
现在,任何程序或用户都可以使用pdflatex命令
您可能必须在R中重新安装
tikzDevice
,以更新其属性。这可能为时已晚,但这里有一个更持久的系统范围解决方案
这是针对Linux的,但一般的想法也适用于Windows
错误的原因是R无法找到pdflatex
的位置。通过将pdflatex的目录添加到PATH
环境变量中,可以告诉R pdflatex在哪里。你必须以R能看到的方式来做
首先,找到pdflatex的安装目录。如果您不知道它在哪里,下面的命令将告诉您它在哪里
which pdflatex
在我的例子中,上面的命令给出了/usr/local/texlive/2018/bin/x86_64-linux/pdflatex
现在我们必须将它添加到PATH
环境变量中,以便任何想要执行pdflatex的程序(不仅仅是R)都可以找到它。我们可以通过更新路径
让所有程序/用户看到来实现这一点。执行下面的命令来完成这个任务
echo "export PATH=\"\$PATH:<pdflatex directory>\"" | sudo tee /etc/profile.d/latex_path.sh
要使更改可用而无需注销并再次登录,请执行:
source /etc/profile.d/latex_path.sh
现在,任何程序或用户都可以使用pdflatex命令
你可以