Подтвердить что ты не робот

Mtext() добавить горизонтальные метки y

Я знаю, что это будет быстро и просто для некоторых из вас. Я просто хочу иметь горизонтальную метку оси y, используя mtext(). Это связано с приложением, я думаю, но я тратил последние 2 часа, пытаясь понять это... В следующих примерах я просто хочу, чтобы y-метки (myLab) были горизонтальными и левыми.

myLab <- c("aaaaaaa", "bb", "c")

par(oma=c(0,10,0,0)) # make a large left maring for the labels

plot(x=c(1:3),
     y=c(1:3),
     pch="|",
     lwd=3,
     tck=0.01,
     yaxt="n",
     ylab="",
     xlab="my legend",
     at= c(1:3),
     )


mtext(text=myLab,
      side=2,
      outer = FALSE,
      at=c(1:3)
      )

Мне не нужно использовать mtext(). Если у вас есть лучшая альтернатива, сообщите мне.

Спасибо!

4b9b3361

Ответ 1

Используйте аргумент las:

mtext(text=myLab, las=1,
       side=2,
       outer = FALSE,
       at=c(1:3)
       )

Приводит их к краю, но вы можете накладывать конечные пробелы в значениях myLab. Вы можете оставить выравнивание с использованием значения adj 0 (по сравнению с значением по умолчанию 1):

 plot(x=c(1:3),
      y=c(1:3),
      pch="|",
      lwd=3,
      tck=0.01,
      yaxt="n",
      ylab="",
      xlab="my legend"  # removing extraneous `at` value that only throws a warning
      )
 mtext(text=myLab, las=1, adj=0,
        side=2,
        outer = FALSE,
        line=3.5, at=1:3
        )