gpt4 book ai didi

r - ggplot2 geom_bar position = "dodge"不闪避

转载 作者:行者123 更新时间:2023-12-04 06:43:15 26 4
gpt4 key购买 nike

我有下面的数据框p3:

         test     result
1 1 26.87778
2 1 24.52598
3 1 24.02202
4 1 20.32632
5 1 22.00618
6 2 19.84013
7 2 19.68983
8 2 19.84013
9 2 19.23892
10 2 19.23892
11 3 34.36430
12 3 33.28196
13 3 33.82313
14 3 33.82313
15 3 32.47020
16 4 25.55169
17 4 26.90442
18 4 25.40138
19 4 24.19895
20 4 25.85230
21 4 25.70199
22 4 24.95047
23 5 18.64646
24 5 18.64646
25 5 17.80653
26 5 18.64646
27 5 18.31049

我正在尝试使用以下代码制作带有闪避结果的条形图:
    ggplot(p3, aes(x = test, y = result))+ geom_bar(position="dodge", stat="identity")

但它根本不起作用。我不明白为什么它不起作用,因为我之前使用了相同的代码并且它起作用了。

最佳答案

ggplot(p3, aes(x = test, y = result, group = result)) + 
geom_bar(position="dodge", stat="identity")

如果将 group参数更改为 color,则可以看到正在发生的情况。
ggplot(p3, aes(x = test, y = result, color = result)) + 
geom_bar(position="dodge", stat="identity")

编辑评论:

好像有奇数个组,因为有。第4组在您提供的数据中有7个元素。第3组有5个,但其中2个相同。该图正确显示了高度,并且将类似的元素分组在一起。就像您在每个组上调用了 unique一样。

我认为绘图:
ggplot(p3, aes(x=test, y=result, group=result, color=result)) + 
geom_bar(position='dodge', stat='identity')

显示得很好。至于每个组有5个元素,事实并非如此。第4组有7个。要查看您的描述,您可以执行以下操作:
ggplot(p3, aes(x=as.integer(row.names(p3)), y=result, fill=factor(test))) +   
geom_bar(position='dodge', stat='identity')

关于r - ggplot2 geom_bar position = "dodge"不闪避,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11005782/

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