Используйте верхние индексы в метках оси R

Используя базовую графику в R, как я могу добавить верхние индексы к меткам осей, как это может потребоваться при построении осей широты и долготы на карте.

Рассмотрим этот пример:

plot(-100:-50, 50:100, type="n", xlab="", ylab="", axes=FALSE)
axis(1, seq(-100, -50, 10), labels=paste(abs(seq(-100, -50, 10)), "o", "W", sep=""))
axis(2, seq(50, 100, 10), labels=paste(seq(50,100,10), "o", "N", sep=""))
box()

Создает красивую рамку вокруг карты. Было бы еще лучше сделать индекс степени надстрочным.

Обычно это можно сделать в других графических функциях, таких какmtext() а такжеtext() с помощьюexpression(paste(...)) или жеsubstitute() но как это сделать в этом случае?

 Eric Fail17 мая 2012 г., 02:54
Означает ли этоplot(0,xlab=expression(paste('(SOC[',kgm^-2,'])'^0.25,sep=''))) ответь на твой вопрос?

Ответы на вопрос(4)

@ The Thunder Chimp Вы можете разделить текст таким образом, чтобы на некоторые разделы влиял супер (или под) сценарий, а на другие - без использования *. с разделением слова «момент» от «4-й» -

plot(rnorm(30), xlab = expression('4'^th*'moment'))

˚

R, кажется, справляется с этим хорошо. Введите Option-k на Mac, чтобы получить его. Не уверен насчет других платформ.

 Pertinax17 июл. 2017 г., 16:12
Это не работает для других символов, таких как надстрочный индекс Unicode 7 Fileformat.info / Инфо / юникода / символ / 2077 / index.htm)
Решение Вопроса

parse(text='70^o*N') подниметo как верхний индекс (the*N должен убедиться, что N тоже не поднимется).

labelsX=parse(text=paste(abs(seq(-100, -50, 10)), "^o ", "*W", sep=""))
labelsY=parse(text=paste(seq(50,100,10), "^o ", "*N", sep=""))
plot(-100:-50, 50:100, type="n", xlab="", ylab="", axes=FALSE)
axis(1, seq(-100, -50, 10), labels=labelsX)
axis(2, seq(50, 100, 10), labels=labelsY)
box()
 digitalmaps17 мая 2012 г., 03:22
екстовая разметка на графиках - немного неясная область практики R. Кажется, это всегда меня портит. Спасибо за эту ясность. Было бы здорово, если бы кто-то разработал подробное руководство для этого.
 hendra04 сент. 2013 г., 02:41
Какой символ используется для обозначения индекса?
 Ben Bolker04 нояб. 2013 г., 21:24
@ npo: квадратные скобки (см.?plotmath)
 Gullydwarf03 сент. 2015 г., 16:32
Это перерывы на текст; Пример: parse (text = "Frequency ((364 days) ^ - 1)") Необходим верхний индекс для заголовка оси. Я не нашел решения.
 mathematical.coffee04 сент. 2015 г., 01:55
plot(0,xlab=expression('Frequency (364 days)' ^ -1))

Это быстрый пример

plot(rnorm(30), xlab = expression(paste("4"^"th")))
 Pertinax17 июл. 2017 г., 16:17
Как бы вы написали что-то не в верхнем индексе в конце, как в «4-й момент», без надписи «момент»?
 Alex31 авг. 2017 г., 18:43
@ TheThunderChimp Извините за очень поздний ответ. Возможно, вы уже поняли, как это сделать, но вы можете сделать это:plot(rnorm(30), xlab = expression(paste("4"^"th", " moment")))

Ваш ответ на вопрос