Odirley e Walmes, boa tarde!
Pelo que entendi o reorder() reordena os níveis (x) em função da resposta (y). Na proposta que segue, sugiro reordenar os níveis diretamente, informando a ordem desejada.
### objeto "trt" montado de forma a reproduzir o ranking informado inicialmente
trt <- factor(c(0,120,180,30,60,0,120,180,30,60,0,120,180,30,60), labels=c(0,120,180,30,60))
rank(trt)
str(trt)
# Factor w/ 5 levels "0","120","180",..: 1 4 5 2 3 1 4 5 2 3 ...
trt2 <- factor(trt, c("0", "30", "60", "120", "180"))
str(trt2)
# Factor w/ 5 levels "0","30","60",..: 1 2 3 4 5 1 2 3 4 5 ...
### Testando com as médias informadas
medias <- c(13.520,20.334,23.926,25.308,25.390,15.712,22.570,28.692,28.760,29.786,16.090,20.988,29.828,35.908,37.146)
data.frame(trt, medias, trt2) ### aparentemente iguais, mas com diferença na ordenação dos níveis!
par(mfcol=c(1,2))
plot(medias~trt)
plot(medias~trt2)