Допустим, у меня есть
paste0("Year = ",index,"\nN = ",length((dfGBD %>% filter(year==index))[[vbl]]),
" Bandwidth = ",round(stats::bw.nrd(log((dfGBD %>% filter(year == index))[[vbl]])),2),
"\nSkewness:", round(e1071::skewness(log((dfGBD %>% filter(year==index))[[vbl]])), 2),
" Kurtosis:",round(e1071::kurtosis(log((dfGBD %>% filter(year==index))[[vbl]])),2),
"\nmu[",vbl,"] = ", round(mean((dfGBD %>% filter(year==index))[[vbl]]),2),
" sigma[",vbl,"] = ",round(sd((dfGBD %>% filter(year==index))[[vbl]]),2)
)
внутри sapply
через index
лет. Далее, vbl
- это строка с именем переменной. sapply
создает вектор labels
для переменной factor
.
Применяя ggplot
, я получаю ярлыки, похожие на следующие:
Year = 2000
N = 195 Bandwidth = 0.09
Skewness: 0 Kurtosis: -0.56
mu[Mortality] = 7750.85 sigma[Mortality] = 1803.28
До сих пор все в порядке. Я уже написал mu[vbl]
, sigma[vbl]
, думая в синтаксическом разборе и в индексной записи, чтобы получить греческие буквы с именем переменной, сохраненной в vbl
в качестве индекса.
Сначала я попробовал facet_wrap
с опцией labeller = "label_parsed"
. Я получил ошибку, которую я только решил записать строку между обратными чертами ``
, но тогда \n
не имеет никакого эффекта. Я перепробовал много вариантов, используя bquote
и / или parse
и / или expression
и / или atop
и т. Д., Чтобы получить результат с несколькими строками с желаемым выводом, который я описал выше. Но только получить или одну строку или очень некрасивые выводы или, в основном, ошибки, и я пока не мог видеть греческие буквы.
Так что / как мне делать?
PS: как ответили другие stackoverflow
, \n
не работает в этом контексте, поэтому предлагается список с bquote
для каждой строки. Я попробовал это, но затем я получил ошибку, которая, по-моему, связана с несовместимостью количества элементов всех списков и количества меток фактора (label
не может быть list
?).
Спасибо!