我试图用上标标记R中的情节。例如,我有一个名为label的变量:
>label <- colnames(tmp.df);
>label
[1] "ColumnA" "Volume 100mm3", "ColumnC", etc.
我想要&#34; 3&#34;在&#34;卷100mm3&#34;作为我标题标签的上标。我不能使用类似的东西:
label <- c("ColumnA", expression(paste('Volume 100mm'^'3')), "ColumnC");
因为tmp.df中列名的排序可能会在运行之间发生变化。那我怎么能解决这个问题呢?
答案 0 :(得分:1)
您可以通过
找到 mm 的那个ind <- grep("mm",label)
splt <- strsplit(label[ind], "mm")[[1]]
然后通过
注入表达式label[ind] <- parse(text=sprintf("paste('%smm'^'%s')",splt[1],splt[2]))
如果有多个字符串表明需要表达式,那么应该可以直接调整它。
答案 1 :(得分:1)
您可以使用bquote
。 *
连接&#34;第100卷&#34;到&#34; mm ^ 3&#34;没有空间。如果您想要空格,可以使用~
代替*
。
plot(1:10, main = bquote(.("Volume 100") * mm^3))
答案 2 :(得分:0)
如何将Unicode字符用于立方体'SUPERSCRIPT THREE'(U + 00B3)?在R中,这将被转义为'100mm \ u00B3',或者如果这是来自数据文件,只需在文件中直接使用unicode字符。