如何使用 R 在 tikz 中添加包

如何使用 R 在 tikz 中添加包

我在R生成图片。但是,如下图所示,y 轴标签缺失。似乎有些错误ylab="$\\ln \\mathbb V \\widehat\\sigma_{MOP, \\alpha}$"。但是,我不知道为什么。有人能帮我吗?谢谢!

错误:TeX 无法计算以下字符串或字符的度量:$\ln \mathbb{V} \widehat{\sigma}_{MOP, \alpha}$

var.asym <- function(shape, alpha){
  0.001*shape*shape*alpha*(1-alpha)^(2*shape-1)/(1-(1-alpha)^shape)^2
}

tikz("MOPasyvar.tex", width=4, height=3)
par(mar=c(4, 4, 0.5, 0.2))
theta0 <- c(-0.4, 1)
plot(seq(0.001, 0.999, by=0.001), log(var.asym(theta0[1], seq(0.001, 0.999, by=0.001))), type="l", lwd=2, ylim=c(-8, 0),
     xlab="$\\alpha$", ylab="$\\ln \\mathbb V \\widehat\\sigma_{MOP, \\alpha}$")
theta0 <- c(0.4, 1)
lines(seq(0.001, 0.999, by=0.001), log(var.asym(theta0[1], seq(0.001, 0.999, by=0.001))), lty=2, lwd=2)
legend("top", legend=c("$\\xi_0=-0.4$", "$\\xi_0=+0.4$"), lty=c(1, 2), lwd=2, bty="n")
dev.off()

在此处输入图片描述

答案1

问题出在您\mathbb在 y 标签中使用,并且mathbb字体需要加载一些数学字体。在这种情况下,amsfonts将解决问题,因此您必须告诉TikZdevice加载该包。为此使用:

options(tikzLatexPackages 
   =c(getOption( "tikzLatexPackages" ),"\\usepackage{amsfonts}"))

您可以根据需要添加任意数量的包,并以逗号分隔(因为这只是一个c()函数。)

相关内容