отображать индексы и надстрочные знаки в меток оси в ggplot [duplicate]

Для CSS3-совместимых браузеров есть white-space-collapsing:discard

: http://www.w3.org/TR/2010/WD-css3-text-20101005/#white-space -collapsing

46
задан nzcoops 27 June 2013 в 05:56
поделиться

2 ответа

Я могу думать о двух лучших способах, чем использовать paste:

 ggplot(dat, aes(x=x,y=y)) +
     geom_point() +
     labs(y=expression(Blah[1*d]))
 ggplot(dat, aes(x=x,y=y)) +
     geom_point() +
     labs(y=expression(Blah["1d"]))

Токены (или «имена» или «символы») в R не должны начинаться с цифр. Таким образом, вы обходите это ограничение либо путем цитирования, либо путем разделения 1 и d не-пространственным разделителем, *. Это означает, что «присоединяется» или «лигирует» чистый числовой литерал с юридическим символом или маркером.

Чтобы получить знак процента, неподписались просто:

 ggplot(dat, aes(x=x,y=y)) +
    geom_point() +
    labs(y=expression(Blah[1*d]*"%"))

Чтобы помещать парсеры вокруг pct-sign:

expression(Blah[1*d]*"(%)")

Символ % имеет особое значение в разборе R, поскольку он означает начало пользовательского инфиксного оператора. Поэтому использование его в качестве литерала требует, чтобы оно было указано.

46
ответ дан 42- 26 August 2018 в 13:12
поделиться

Хорошо. Я потел, я не публиковал это только для того, чтобы ответить на него сам, несмотря на то, как быстро я его получил (всегда так, когда вы задаете вопрос! Вот он:

ggplot(dat, aes(x=x,y=y)) +
    geom_point() +
    labs(y=expression(Blah[1][d]))

Думал, что лучше всего опубликовать ответьте, а не удалите вопрос, поскольку он может помочь кому-то еще в один прекрасный день.

«Блахи» в стороне, я действительно хотел expression(paste("Hb", A[1][c]," (%)",sep=""))

Почему paste0() не работает здесь находится вне меня.

4
ответ дан Roland 26 August 2018 в 13:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: