相关疑难解决方法(0)

ggplot geom_bar 与 stat = "sum"

我想绘制一个条形图,沿两个维度对变量求和,一个将沿 展开x,另一个将垂直展开(堆叠)。

我希望以下两条指令能做同样的事情,但它们没有,只有第二条给出了所需的输出(我自己汇总数据的地方)。

我想了解在第一种情况下发生了什么,以及是否有办法使用ggplot2的内置聚合功能来获得正确的输出。

library(ggplot2)
library(dplyr)
p1 <- ggplot(diamonds,aes(cut,price,fill=color)) + 
  geom_bar(stat="sum",na.rm=TRUE)
Run Code Online (Sandbox Code Playgroud)

产生这个情节:

在此处输入图片说明

p2 <- ggplot(diamonds %>%
                group_by(cut,color) %>%
                summarize_at("price",sum,na.rm=T),
              aes(cut,price,fill=color)) +
  geom_bar(stat="identity",na.rm=TRUE)
Run Code Online (Sandbox Code Playgroud)

产生这张图片:

在此处输入图片说明

这是我们的条形顶部应该在哪里,p1 没有给出这些值:

diamonds %>% group_by(cut) %>% summarize_at("price",sum,na.rm=TRUE)
# # A tibble: 5 x 2
# cut    price
# <ord>    <int>
# 1      Fair  7017600
# 2      Good 19275009
# 3 Very Good 48107623
# 4   Premium 63221498
# 5     Ideal 74513487
Run Code Online (Sandbox Code Playgroud)

r ggplot2

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

ggplot2 ×1

r ×1