首页 > 解决方案 > 为什么 geom_bar 不拆分分类变量

问题描述

对 R 编程和尝试创建条形图非常陌生,但是我的分类 x 变量仍然组合在一起,我得到一个没有任何可用信息的条形图。子样本如下:

     New Name Tot Pl L Ld P Min
 1:        1   376.62     5.91
 2:        4   689.07     7.26
 3:        5   202.14     4.67
 4:        6   516.28     6.01
 5:        7   698.02     7.41
 6:        8   180.50     3.69
 7:        9   163.12     4.24
 8:       10   176.66     4.59
 9:       11   665.34     7.97
10:        2   584.28     6.18
11:        3   155.67     4.04
12:        1   137.28     3.65
13:        4   181.87     4.84
14:        5   152.95     4.07
15:        6   150.07     3.99
16:        7   156.41     4.16
17:        8   108.19     2.88
18:        9   162.76     4.33
19:       10   175.88     4.68
20:       11   160.88     4.28
21:        2   148.53     3.95
22:        3   155.28     4.13
23:        1    62.84    10.49
24:        4   145.73    10.85
25:        5    12.00     8.08
26:        6    68.25     8.92
27:        7   143.88    11.83
28:        8     0.12     0.56
29:        9     0.22     1.04
30:       10     0.39     1.80
31:       11   162.22    12.08
32:        2   115.77     8.62
33:        3     0.11     0.51

我正在使用的代码是

ggplot(ngames, aes(x= 'New Name', y= 'Ld P Min')) + geom_bar(stat = "summary")

这给了我这个不正确的图表

坏图

我已经能够使用来自 iris 的股票数据创建我正在寻找的示例图,但它似乎不适用于我的数据,尽管所有数据格式都与 iris 中的相同。预期图的例子。该图的代码是

ggplot(iris, aes(x = Species, y = Sepal.Length)) +
  geom_bar(stat = "identity")

谢谢您的帮助。

标签: rggplot2geom-bar

解决方案


我不确定这就是一切,因为没有可重现的例子,但我马上看到的是:

1) ggplot 不需要在引号中包含变量名。如果变量名称中有空格,请改用刻度线。此外,最好指定要定义的参数。因此,将您的第一行更改为

ggplot(games, aes(x=`Player Name`, y=`Player Load Per Minute`));

2)正如上面的评论中提到的,你的geom_bar声明使用了不需要的参数。您收到的错误字面意思是“ggplot 不知道什么stat = "summary"fun.y = 'mean'意味着什么”。我建议不要使用 YouTube 视频作为指南,而是使用GGplot Reference


推荐阅读