## set the levels in order we want
theTable <- within(theTable,
Position <- factor(Position,
levels=names(sort(table(Position),
decreasing=TRUE))))
## plot
ggplot(theTable,aes(x=Position))+geom_bar(binwidth=1)
您的解决方案最适合我的情况,因为我想编程绘制 x 为 data.frame 中变量表示的任意列。其他建议更难通过涉及变量的表达式来表达 x 顺序的排列。谢谢!如果有兴趣,我可以使用您的建议分享我的解决方案。还有一个问题,添加 scale_x_discrete(limits = ...),我发现图表右侧有与条形图一样宽的空白区域。我该如何摆脱空白区域?因为它没有任何用处。