У меня есть график рассеяния с горизонтальной и вертикальной линией, на которых изображены значения пороговых значений, и поэтому они делят график на четыре квадранта. Я бы назвал квадранты. Я думаю, что лучший способ сделать это - это число в каждом из четырех углов графика (альтернативные предложения приветствуются!).Позиция ggplot text в каждом углу
Мне удалось поместить текст в угол каждого квадранта, но позиции не идеальны. Я предполагаю, что проблема связана с тем, что масштабирование осей отличается (диапазон значений примерно одинаковый, но ширина моей фигуры примерно в три раза превышает высоту).
В настоящее время я делаю следующий путь. Сначала я создаю график с точками и двумя строками, затем строю его, чтобы получить диапазон двух осей, который я использую, чтобы отрегулировать положение текстов.
plot.build = ggplot_build(plot)
xpos = numeric(4)
xpos[2] = xpos[3] = plot.build$panel$ranges[[1]]$x.range[1]
xpos[1] = xpos[4] = plot.build$panel$ranges[[1]]$x.range[2]
ypos = numeric(4)
ypos[1] = ypos[2] = plot.build$panel$ranges[[1]]$y.range[2]
ypos[3] = ypos[4] = plot.build$panel$ranges[[1]]$y.range[1]
plot = plot + geom_text(aes(x2,y2,label = texthere),
data.frame(x2=xpos, y2=ypos, texthere=c("1", "2", "3", "4")),
color="#4daf4a", size=4)
В основном это работает, но из-за расширения пространства между числами и границами участка не одинаковы для обеих осей. Я попытался настроить положение x текста, но затем ggplot просто расширяет диапазон значений, позиции (относительно границ) остаются неизменными. Есть ли способ переместить текст без изменения диапазона значений?
Заранее благодарен!
Добро пожаловать на ТАК! Просьба представить [воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example) с набором данных и, возможно, изображение вашего текущего вывода, показывающего что не так – scoa
Я бы добавил фотографию, но у меня недостаточно очков репутации, чтобы сделать это. –