我需要在rplot主标题中使用带有动态下标的希腊字母。如果我使用表达式和粘贴,就像我在下面的代码中的'main'语句中所做的那样,那么下标的值不会显示为数字而是显示为字母。我只能使用paste来获取下标的值,请参阅下面代码中的'sub'语句,但在这种情况下,希腊字母不会出现!!
任何想法..
由于
# Generating Random Variables
# Exponential(1)
inv.cdf=function(n, lambda){
u=runif(n,0,1)
x=-log(1-u)/lambda
}
nu=sample(1:15,6)
y=matrix(rep(NA),10000,length(nu))
for(j in 1:length(nu)){
for (i in 1:10000){
y[i,j]=2*sum(inv.cdf(nu[j], 1))
}
}
par(mfrow = c(3, 2))
for(j in 1:6){
hist(y[,j], freq=F, main=expression(paste('Histogram of Generated ',chi[2*nu[j]], ' Data')), sub= paste('Degrees of Freedom = ', nu[j]), xlab=expression(paste('Generated ' ,chi^2 ,' Data')))
curve(dchisq(x, df=2*nu[j]),add=T, col=2, lwd=2)
}
答案 0 :(得分:4)
我认为您正在寻找substitute
,它允许您使用您喜欢的任何值替换表达式(在您的情况下为j
)中的某个值。所以,如果你使用它:
main=substitute(
expression(paste('Histogram of Generated ',chi[2*nu[j]], ' Data')),
list(j=j)
)
在hist
函数中,它可以正常工作。