Выражение R в мульти-метках

Я пробовал выражение и bquote, но не могу понять этого ...

У меня есть непрерывная переменная, назовите ее x. Я вырезал его, используя cut(...), чтобы создать множитель с двумя уровнями. Я хочу обозначить эти уровни <=10 и >10, но я хотел бы использовать выражение или bquote функции (см. plotmath функцию), чтобы заменить <= более красивой версией:

Например:

x <- rnorm(100,10,5)
x.10 <- cut(x, breaks=c(-Inf,10,Inf), labels=*expression*)

Что я должен указать в качестве аргумента для меток, чтобы, когда я делаю штриховую диаграмму x.10, метки отображались под полосами?

barplot(table(x.10))

barplot (table (x.10))

Я могу заставить это работать:

labs <- expression(x <= ...)

plot(1, main=labs)

plot (1, main = labs)

но как включить это в ярлыки штриховых графиков?


person Edward    schedule 04.02.2017    source источник
comment
Возникли проблемы с редактированием, но, надеюсь, вы поняли мою точку зрения. Просто игнорируйте ошибки.   -  person Edward    schedule 04.02.2017


Ответы (1)


Не пытайтесь использовать выражения как метки для факторов. Примените метки выражения к самому графику, например:

set.seed(42) # always include a seed in questions with randomness
x <- rnorm(100,10,5)
x.10 <- cut(x, breaks=c(-Inf,10,Inf), labels = FALSE)

labels <- c(expression(paste(x <= 10)), expression(paste(x > 10)))
barplot(table(x.10), names.arg = labels)

простой штриховой график

person r2evans    schedule 04.02.2017
comment
Спасибо. Итак, когда вы говорите «Не ...», значит ли это, что этого нельзя сделать? :) - person Edward; 04.02.2017
comment
Я не могу сказать, что это невозможно. Возможно, мне следовало сказать не биться головой о кирпичную стену слишком долго, пытаясь использовать выражения в качестве ярлыков. Нелегко придать подписи к сюжету причудливый вид, поэтому нам нужно пройти через expression или bquote. Использование ярлыков (например, от cut или factor) предназначено для описания, а не для красоты, поэтому меня не удивит, если создание фантазий будет большим уловом и не обязательно стоит потраченного времени. Но я не знаю правила или строчки кода, в которой говорилось бы, что это абсолютно невозможно. :-) - person r2evans; 04.02.2017
comment
И паста тут вроде не нужна. Еще раз спасибо! - person Edward; 04.02.2017
comment
Так и думал ... Признаюсь, я смотрю на сюжетную математику и другие документы об этом каждый раз, когда хочу придумать что-то необычное ... возможно, это одна из причин, по которой я предлагаю не пытаться делать это с помощью чего-то столь же широко распространенного, как ярлыки. - person r2evans; 04.02.2017