我试图用ggplot2绘制一个条形图。以x值为不同范围( x1= 0-10,x2= 11-20,x3= 21-30,.直到91-100,最后的范围是">100")。当我用相应的y值绘制图形时,如下所示:
ggplot(data=figure1_data, aes(x=Average.Coverage.of.Study, y=Number.of.Studies)) + geom_bar(stat = "Identity")">100“x值在图中排在第一位,而不是在我想要的末尾。我怎么能让它在91-100范围x值之后??有人能帮忙吗?我是新来的,非常感谢!)
发布于 2022-11-22 02:52:28
编辑:
你需要根据你的喜好来订购等级。
df <- data.frame(avg = c("0-10","11-20","21-30","91-100",">100"),
studies = c(1:5))
ggplot(df)+
geom_bar(aes(x = ordered(avg, levels = c(avg)), y = studies), stat = "identity")或
ggplot(df)+
geom_bar(aes(x = ordered(avg, levels = c("0-10","11-20","21-30","91-100",">100")), y = studies), stat = "identity")` 都会给你同样的结果。

https://stackoverflow.com/questions/74526885
复制相似问题