Как изменить порядок графиков внутри одного графика? - PullRequest
0 голосов
/ 09 июня 2019

Здесь вы можете увидеть вырез моего кода.

ratiox = seq(0, 3, 0.05)
x = rnorm(61, 55000, 3)
y1 = rep(200, times = 61)

l = cbind(ratiox, x, y1)
l = as.data.frame(l)
l$y1 = as.character(l$y1)

y1 = rep(100, times = 61)

m = cbind(ratiox, x, y1)
m = as.data.frame(m)
m$y1 = as.character(m$y1)

y1 = rep(50, times = 61)
n = cbind(ratiox, x, y1)
n = as.data.frame(n)
n$y1 = as.character(n$y1)

y1 = rep(25, times = 61)

o = cbind(ratiox, x, y1)
o = as.data.frame(o)
o$y1 = as.character(o$y1)

total = rbind(l,m,n,o)
View(total)

ggplot(total, aes(x = ratiox, y = y1, height = x/100000, fill = y1)) + 
  geom_ridgeline() + scale_fill_manual(values = c("green", "gray", "lightblue", "red", "blue", "black")) + xlab("Emission ratio") + 
  ylab("") + theme_classic(base_size = 25) 

В итоге порядок графиков не соответствует моим ожиданиям.Мне бы хотелось, чтобы порядок различных концентраций (у1) соответствовал порядку ввода.Значение: 200, 100, 50 и 25. Мне бы хотелось, чтобы моя переменная y1 оставалась символом.Я не хочу преобразовывать его в числовую переменную.

1 Ответ

0 голосов
/ 09 июня 2019

Преобразуйте переменную y1 как фактор и упорядочите уровни по своему усмотрению.

total$y1 <- factor(total$y1, levels = c("200", "100", "50", "25"))

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