【问题标题】:using expression to label corrplot使用表达式标记 corrplot
【发布时间】:2018-07-25 12:14:07
【问题描述】:

我正在尝试使用 corrplot 可视化一个大的相关矩阵

library(corrplot)
df <- data.frame(a=c(1,5,3,7,9), b=c(6,5,7,2,3), c=(seq(1,10,2)))
cm <- cor(df)
corrplot(cm)

所以,到目前为止一切正常,但是,我希望我的变量被命名为。 expression(paste(Delta, " (LW"[""%up%""], " Stefan-Boltzmann(T"["2m"],"))"))expression("LW"%down%" (PIR)")

In this vignette 我发现以“:”开头的字符串告诉corrplot 进行评估和表达,但是, ":Delta Druck zu 14T-Mittel" 给我

Error in parse(text = substring(s, 2)) : <text>:1:8: unexpected symbol
1:  Delta Druck
           ^

并首先尝试添加 %down% 告诉我在尝试将其用作列名时找不到函数 %down% 。有解决办法吗?

非常感谢。


罗兰评论后编辑: 我试过了

df <- data.frame(a=c(1,5,3,7,9), b=c(6,5,7,2,3), c=(seq(1,10,2)))
cm <- cor(df)


rownames(cm)<- c(":'Delta Druck zu 14T'-'Mittel'","b","C")

corrplot(cm)

这给了我这个结果:

不幸的是它没有解析 Delta

【问题讨论】:

  • 试试":'Delta Druck zu 14T'-'Mittel'"。错误消息表明您没有传递有效的表达式。
  • 请学习plotmath。显然你想要rownames(cm)&lt;- c(":Delta * 'Druck zu 14T'-'Mittel'","b","C")

标签: r expression r-corrplot


【解决方案1】:

感谢 Roland,我终于找到了答案,它是单引号和双引号以及 * 的组合

rownames(cm)<- c(":Delta * 'Druck zu 14T'-'Mittel'",
                 ":Delta * '(LW'[''%up%'']*')'",
                 ":Delta * ' LW'[''%up%'']* ' Stefan-Boltzmann(T'['2m']* ')'")

corrplot(cm)

显然,星号必须出现在每个部分的前面,不必进行评估,可以使用单引号代替双引号,并且带有 %% 的调用必须用双单引号括起来。

谢谢!

【讨论】:

  • A * 仅仅意味着两个元素的并列。
猜你喜欢
  • 1970-01-01
  • 2015-05-12
  • 1970-01-01
  • 1970-01-01
  • 2019-09-14
  • 2010-12-14
  • 2021-10-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多