簡體   English   中英

在 R 的軸標題中同時使用下標和變量值

[英]Using subscript and variable values at the same time in Axis titles in R

我想在 R 的 plot 中使用標題“濕地中的二氧化碳排放量”,而二氧化碳中的 2 在下標中,並且該區域的值(此處為:“濕地”)包含在名為“區域”的變量中。

region = "wetlands"
plot (1, 1, main=expression(CO[2]~paste(" emissions in ", region)))

問題是,粘貼的不是變量的值,而是變量的名稱。 這給出了“區域內的二氧化碳排放量”而不是“濕地中的二氧化碳排放量”。 我也試過:

region="wetlands"
plot (1,1,main=paste(expression(CO[2]), "emissions in", region))

但是這里不做下標,標題是:“濕地中的CO[2]排放”。

是否有可能以某種方式將變量的值轉換為表達式?

謝謝你的幫助,

斯文

無需使用paste()來生成 plothmath 樣式注釋的表達式。 這工作得很好:

region <- "foo"
plot (1, 1, main = bquote(CO[2] ~ "emissions in" ~ .(region)))

給予:

在此處輸入圖像描述

使用paste()只是礙事。

注意:您必須引用"in" ,否則解析器會將其作為 R 語法的關鍵部分。

您可以使用替代品:

mn <- substitute(CO[2]~ "emissions in" ~ region, list(region="wetlands") )
plot(1, 1, main=mn )

替代地塊

?substitute幫助文件:

替代品的典型用途是為數據集和繪圖創建信息標簽。 下面的 myplot 示例顯示了該工具的簡單使用。 它使用函數 deparse 和替換為 plot 創建標簽,這些標簽是實際 arguments 到 function myplot 的字符串版本。

對於您的情況,從重復鏈接的答案之一中竊取:

x <- "OberKrain"
plot(1:10, 1:10, main = bquote(paste(CO[2], " in ", .(x))))

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM