ggplot2中的切点直方图

时间:2016-07-22 17:09:35

标签: r ggplot2 histogram data-visualization

Minitab中,很容易创建“cutpoint”直方图。可以在ggplot2吗?

完成

例如,

df <- data.frame(x = c(0.08, 0.21, 0.25, 0.4, 0.5, 0.6))
ggplot(df, aes(x = x)) + geom_histogram(binwidth = 0.1)

enter image description here

正如您在此处所见,R默认为“中点”直方图。包含0.08的栏在0.1处标有一个栏。包含0.210.25的条形图标记在0.2,依此类推。

我可以以某种方式更改这些条形,以便第一个条形覆盖00.1之间的区域,第二个条形覆盖0.20.3之间的区域,并且那么?

1 个答案:

答案 0 :(得分:1)

您可以通过两种方式解决问题:使用参数“center”或使用“boundary”。使用“center”可以指定其中一个bin的中心,“boundary”是相似的,但是您可以指定两个bin之间的边界值。值得注意的是,“中心”和“边界”可以高于或低于数据范围,在这种情况下,所提供的值将移动足够数量的宽度。

在这种情况下,您已经知道了垃圾箱的宽度及其边界,因此使用此参数您可以轻松地按照您的要求进行操作:

library(ggplot2)
df <- data.frame(x = c(0.08, 0.21, 0.25, 0.4, 0.5, 0.6))

# This is "center" solution:
ggplot(df, aes(x = x)) + geom_histogram(binwidth = 0.1, center=0.05)

# This is with "boundary" parameter 
ggplot(df, aes(x = x)) + geom_histogram(binwidth = 0.1, boundary=0.1)

您可以在参考资料中找到详细信息和更多信息?geom_histogram。 希望这有帮助