【问题标题】:histogram and density in R by ggplotggplot在R中的直方图和密度
【发布时间】:2018-12-16 14:29:33
【问题描述】:

我有一个销售数据,其值从 1 到 3000000。大多数计数在 [1,800] 的区间内。如果我使用以下代码绘制直方图:

ggplot(his_data) + geom_histogram(aes(x = sales), fill = "grey", color = "black")

那么图形是这样的:

是不是因为垃圾箱太分散了?我该如何解决这样的问题并添加密度函数?

非常感谢。

【问题讨论】:

  • 如果所有值都大于零(很可能与销售数据一样),您可以使用对数刻度+ scale_x_log10() + geom_density()
  • 是的,所有值都大于零。有什么例子吗?因为值太多,R的ggplot目前看起来没什么意义。
  • 我在评论中给了你代码...
  • 请发布您的数据的代表性样本。看起来您的数据非常倾斜;您可以尝试诸如对值进行对数转换以更好地查看它或根据某些标准删除异常值等选项

标签: r ggplot2 histogram kernel-density


【解决方案1】:

改变 binwidth 有帮助吗?

geom_histogram(aes(x = sales),
               binwidth = 100,
               fill = "grey",
               color = "black")

【讨论】:

  • 是的,它不起作用。我的 bin 范围是 1 到 3,000,000。我猜它太分散了?
  • 您可以创建两个单独的图,从 0 到 2000,然后从 2000 到任何高的数字,或者忽略 >2000?
  • 我希望它们在同一个情节中。有没有办法在同一个图中使用不同宽度的 bin(即一个在 100 中,而其他在 100000 中?
  • 不知道,不是很优雅,但可能会绘制两个不同带宽的不同图表,然后将它们粘在一起
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-20
  • 1970-01-01
  • 2018-06-30
  • 1970-01-01
  • 2013-12-17
  • 1970-01-01
  • 2012-03-04
相关资源
最近更新 更多