gpt4 book ai didi

r - ggplot2:更改轴上因子变量的显示顺序

转载 作者:行者123 更新时间:2023-12-03 11:50:35 24 4
gpt4 key购买 nike

当我将geom_tile()ggplot2和离散比例一起使用时,标签在x轴上按升序排列,在y轴上按降序排列:

#some sample data
a <- runif(400)
a <- matrix(a, ncol=20)
colnames(a) <- letters[seq( from = 1, to = 20 )]
rownames(a) <- letters[seq( from = 1, to = 20 )]
a <- melt(a)

当我绘制数据帧 a时,结果如下:
ggplot(a, aes(X1, X2, fill = value)) + geom_tile() + 
scale_fill_gradient(low = "white", high = "black", breaks=seq(from=0, to=1, by=.1), name="value") +
opts(axis.text.x=theme_text(angle=-90, hjust=0)) +
scale_x_discrete(name="") + scale_y_discrete(name="")

并且x和y的坐标标记不同:

我希望标签从顶部到底部,从左到右从a-z排序。有快速的方法吗?

最佳答案

这里的重点是因素水平的顺序。级别中的顺序也是绘图中的顺序。您可以使用rev反转这样的级别顺序(请注意,我只是对data.frame中的一列进行重新排序):

df$X1 = with(df, factor(X1, levels = rev(levels(X1))))

使用此语法可以根据需要对因子进行重新排序。

关于r - ggplot2:更改轴上因子变量的显示顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8713462/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com