【问题标题】:Barplot: Greek letters on y axis in R条形图:R 中 y 轴上的希腊字母
【发布时间】:2016-09-01 10:41:53
【问题描述】:

这是我关于条形图的另一个问题的后续问题: Tornado plot in R

我意识到关于在 y 轴上获取希腊字母的问题需要作为一个自己的问题提出。

问题是: 我有以下条形图,需要将 y 轴更改为相应的希腊字母(以及带有条形的 V)。

我使用以下代码:

# Tornado plot

data <- matrix(c(-0.02,0.02,-0.01,0.01,-0.03,0.02,-0.01,0.04), ncol = 4)
rownames(data) <- c('+10%','-10%')
colnames(data) <- c('V_bar', 'alpha', 'rho','xi')
x <- seq(-0.04,0.04, length=10)

barplot(data[1,], horiz = T, las=1, xlim = c(-0.04,0.04), xaxt='n', ylab='',
        beside=T, col=c('springgreen'))
barplot(data[2,], horiz = T, las=1, xlim = c(-0.04,0.04), xaxt='n',
        yaxt='n',                 #To prevent double printing of y-labels.
        beside=T, col=c('indianred2'), add = TRUE)
axis(1, at=pretty(x),  lab=paste0(pretty(x) * 100," %"), las=TRUE)

为了获得希腊字母,我尝试了以下方法:

 barplot(data[2,], horiz = T, las=1, xlim = c(-0.04,0.04), xaxt='n', 
         yaxt= c(expression(bar(V)), expression(alpha),expression(rho), expression(xi)),
         beside=T, col=c('indianred2'), add = TRUE))

axis(2, at=c(1:4), lab = expression(xi ~ rho ~ alpha ~ bar(V)), las=T)

axis(2, at=pretty(x), lab = paste0(expression(xi ~ rho ~ alpha ~ bar(V)), las=T))

但没有成功。现在有人知道了吗?

注意。我看过这个问题:Adding greek character to axis title 但它侧重于标签,而不是 y 轴“值”。 另外,我尝试过类似Putting greek letters in column names 没有成功。

【问题讨论】:

    标签: r unicode bar-chart


    【解决方案1】:

    如果您将参数names.arg 提供给barplot,则无需调用axis 来标记条形:

    barplot(data[1,], horiz = T, las=1, xlim = c(-0.04,0.04), xaxt='n', ylab='',
        beside=T, col=c('springgreen'),
        names.arg=c(expression(xi),expression(rho), expression(alpha), expression(bar(V))))
    

    【讨论】:

      【解决方案2】:

      您只需要在axis 中传递lab 作为expressions 的向量。

      axis(2, at=c(1:4), lab = c(expression(xi),
       expression(rho), expression(alpha), expression(bar(V))), las=T)
      

      然后你可以根据需要使用轴的设置。

      【讨论】:

        猜你喜欢
        • 2014-11-02
        • 1970-01-01
        • 2011-08-28
        • 2015-08-12
        • 2012-10-15
        • 1970-01-01
        • 2014-02-01
        • 2020-06-14
        • 1970-01-01
        相关资源
        最近更新 更多