在GGR图中对x轴进行排序
我使用以下数据和代码:在GGR图中对x轴进行排序,r,R,我使用以下数据和代码: ddf = structure(list(number = 1:20, words = structure(c(10L, 20L, 17L, 6L, 5L, 13L, 11L, 1L, 8L, 15L, 3L, 18L, 16L, 7L, 4L, 14L, 12L, 2L, 9L, 19L), .Label = c("eight", "eighteen", "eleven", "fifteen", "five", "four", "fourteen", "nine"
ddf = structure(list(number = 1:20, words = structure(c(10L, 20L, 17L,
6L, 5L, 13L, 11L, 1L, 8L, 15L, 3L, 18L, 16L, 7L, 4L, 14L, 12L,
2L, 9L, 19L), .Label = c("eight", "eighteen", "eleven", "fifteen",
"five", "four", "fourteen", "nine", "nineteen", "one", "seven",
"seventeen", "six", "sixteen", "ten", "thirteen", "three", "twelve",
"twenty", "two"), class = "factor"), value = c(0.34420683956705,
0.612443619407713, 0.7042224498, 0.832921771565452, 0.351153316209093,
0.622333734529093, 0.932609781855717, 0.584015318658203, 0.968014082405716,
0.141673753270879, 0.787956288317218, 0.852732613682747, 0.411922389175743,
0.781018695561215, 0.474310273537412, 0.701303839450702, 0.339094886090606,
0.442493645008653, 0.941094532376155, 0.135925917653367)), .Names = c("number",
"words", "value"), row.names = c(NA, -20L), class = "data.frame")
head(ddf)
number words value
1 1 one 0.3442068
2 2 two 0.6124436
3 3 three 0.7042224
4 4 four 0.8329218
5 5 five 0.3511533
6 6 six 0.6223337
ggplot(ddf)+geom_bar(aes(x=words, y=value), stat="identity")
但是,我需要按照正确的数字顺序排列x轴因子(“单词”)(x轴上的“一”、“二”、“三”等)。我怎样才能做到这一点?感谢您的帮助。诀窍是在因子创建过程中指定标签顺序
> lix = order(ddf$value)
> lvls = ddf$words[lix]
> ddf$words = factor(ddf$words, levels=lvls)
> ggplot(ddf) + geom_bar(aes(x=words, y=value), stat='identity')
>
上述示例按照数据表中的值
列对条形图进行排序。如果您需要根据标签的字面含义对条形图进行排序,则必须手动指定:
> lvls = c('one', 'two', .....)
诀窍是在因子创建期间指定标签顺序
> lix = order(ddf$value)
> lvls = ddf$words[lix]
> ddf$words = factor(ddf$words, levels=lvls)
> ggplot(ddf) + geom_bar(aes(x=words, y=value), stat='identity')
>
上述示例按照数据表中的值
列对条形图进行排序。如果您需要根据标签的字面含义对条形图进行排序,则必须手动指定:
> lvls = c('one', 'two', .....)
这将按数字列中的值重新排序
library(ggplot2)
ddf$words <- reorder(ddf$words,ddf$number)
ggplot(ddf)+geom_bar(aes(x=words, y=value), stat="identity")
库(ggplot2)
ddf$words这将根据数字列中的值重新排序
library(ggplot2)
ddf$words <- reorder(ddf$words,ddf$number)
ggplot(ddf)+geom_bar(aes(x=words, y=value), stat="identity")
库(ggplot2)
ddf$单词编号。我想按数字顺序按单词排序:1、2、3、4等@rnso请参阅我的编辑。此外,您可能需要编辑您的问题以使其更清晰编辑我的问题。我不想手动输入‘一’、‘二’、‘三’等。我可以使用numeber列(1,2,3,…)来执行此操作吗?然后查看jihoward的回答否。我想按数字顺序按单词排序:1、2、3、4等@rnso查看我的编辑。此外,您可能需要编辑您的问题以使其更清晰编辑我的问题。我不想手动输入‘一’、‘二’、‘三’等。我可以使用numeber列(1,2,3,…)来执行此操作吗?然后查看jihoward的AnswerUpper命令并没有改变我的图形。这里的reorder命令在我的系统上也不像在我的另一篇文章中那样起作用:上面的代码根据ddf$number
中的值对系数ddf$words
进行重新排序。如果这不是您想要的,请您在编辑您的问题时以不同的方式进行解释。由于某些原因,如我在上面的评论中所述,重新排序功能在我的系统上不起作用。还有其他方法吗?上面的命令并没有改变我的图表。这里的reorder命令在我的系统上也不像在我的另一篇文章中那样起作用:上面的代码根据ddf$number
中的值对系数ddf$words
进行重新排序。如果这不是您想要的,请您在编辑您的问题时以不同的方式进行解释。由于某些原因,如我在上面的评论中所述,重新排序功能在我的系统上不起作用。还有其他方法吗?