2017-03-06 204 views
0

我在使用ggplot創建直方圖時遇到了問題。將binwidth設置爲ggplot直方圖的值

我有一個數據結構如下:

value_1 
112.45 
2457.44 
333.24 

而且此值列表持續約25000多觀察。

我想要一個直方圖,它的值爲0-100,然後是100-200,然後是200-300的頻率都達到數值的上限。

在上面的例子中,在箱子100-200中給出1個計數,箱子300-400中有1個計數,箱子2400-2500中有一個計數。

你能幫我正確的方向嗎?

+0

相關文章:http://stackoverflow.com/questions/21031060/setting-breaks-in-ggplot2-histogram – zx8754

+0

@ mt1022然後也許這是正確的複製http://stackoverflow.com/questions/15231109/stacked- histogram-from-already-summa-counts-counts-using-ggplot2 – zx8754

+0

@ zx8754。恐怕沒有。對於這個問題,OP想要的東西似乎是在'geom_histogram'中同時設置'center'或'boundary'和'binwidth'。 – mt1022

回答

1

你可以在同一時間設置binwidth,要麼centerboundary設置右單元寬度:

df <- data.frame(x = c(112.45, 2457.44, 333.24)) 

library(ggplot2) # 2.2.1 
ggplot(df, aes(x)) + geom_histogram(binwidth = 100, center = 150) 
# or 
ggplot(df, aes(x)) + geom_histogram(binwidth = 100, boundary = 100) 

中心

分區中的一個的中心。請注意,如果中心位於數據範圍之下或 以上,那麼事情將會被移動一個合適的寬度數 。以整數爲中心,例如,即使0在數據範圍之外,使用width = 1 和center = 0。最多可以指定 中心和邊界之一。

邊界

邊界倉 兩者之間。與中心一樣,當數據範圍之外的邊界是 時,事情會發生變化。例如,要以整數爲中心,使用 width = 1和boundary = 0.5,即使0.5在 數據的範圍之外。最多可以指定中心和邊界中的一個。

如果您知道數據的範圍,你也可以手動在僅geom_histogrambreaks =設置此。