【问题标题】:Visualizing a "stacked" bar chart for individual entries?可视化单个条目的“堆叠”条形图?
【发布时间】:2018-01-01 11:46:05
【问题描述】:

我试图在 R 中制作一个“堆叠”条形图,以查看一个人的销售组合的构成。数据看起来像:

有更多的销售人员(C 先生、D 先生等)和每次销售的年度预订,这是我的兴趣点。我有

使用 ggplot2 显示没有堆叠,只是显示每个人销售的所有销售额的年化总预订量,如代码所示:

g <- ggplot(data1, aes(Sales.Person)) 
g + geom_bar(aes(weight = Annualized.Booking)) + 
  labs(title = "Sales Person Comparison") + 
  labs(y = "Annualized Booking total")`

ggplot 中有没有一种方法可以可视地堆叠单个销售额,从而查看总销售额组合的构成?或者堆积条形图不是解决此问题的最佳解决方案?

【问题讨论】:

  • 你检查ggplot website了吗? Infor 那里: 默认情况下,占据相同 x 位置的多个条将通过 position_stack 相互堆叠。如果您希望它们左右躲避,请使用 position_dodge。最后, position_fill 通过堆叠条形然后标准化每个条形以具有相同的高度来显示每个 x 处的相对比例。
  • 欢迎来到 SO。图片不是代码或数据,除非问题是关于图像处理的。
  • 请不要以图片形式提供您的数据。没有人想全部输入。相反,请使用 dput(data1) 获取您的数据的文本版本,您可以将其粘贴到您的问题中,我们可以粘贴到 R 中。如果您的数据太长,请使用 dput(head, data1, 10))
  • 您可以添加fill = factor(Annualized.booking) .. 或fill = factor(1:nrow(data1) ?
  • 对图片感到抱歉!从现在开始我会考虑到这一点,谢谢。

标签: r plot bar-chart


【解决方案1】:

你的意思是这样的吗(如@erocoar 所说)?

data1 <- data.frame(
  Sales.Person = c("A", "A", "C", "B", "B", "A", "C", "C"),
  Annualized.Booking = c(115000, 139000, 50100, 120500, 80400, 10400, 50500, 75000)
  )

ggplot(data1) + 
  aes(Sales.Person, Annualized.Booking, fill = factor(Annualized.Booking)) + 
  geom_col() + 
  labs(title = "Sales Person Comparison") + 
  labs(y = "Annualized Booking total") + 
  guides(fill = FALSE)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-03
    • 2023-01-31
    • 2023-01-21
    • 1970-01-01
    • 2023-04-09
    相关资源
    最近更新 更多