2015-06-19 70 views
3

我繪製的格子對齊軸蜱在格子直方圖

histogram(~Time |factor(Bila), data=flexi2, xlim= c(5, 15), ylim=c(0, 57), 
     scales=list(x=list(at=seq(5,15,1))), xlab="Time", 
     subset=(Bila%in% c("")))` 

我得到不匹配的確切時間的垃圾箱,而我想斌在準確的時間來啓動,對於一個直方圖箱例如,6,7等我使用格,因爲我想要條件直方圖。我在這裏提取了一個直方圖來說明。 enter image description here

更新: 這是一個可重複的例子(我希望)按要求。可以看出,0例如不在分箱的極限處。

x<-rnorm(1000) 
histogram(~x) 

enter image description here

+1

是'Time'數字或一個因素/字符向量?如果您提供[可重現的示例](http://stackoverflow.com/q/5963269/2954547),它將有所幫助。 – shadowtalker

+0

時間是數字。 – Vasile

回答

2

這是因爲您指定的X軸與規模scales = list(x = list(at = 5:15)),但你實際上並沒有改變斷點。它也會在默認情況下發生:默認軸標籤是整數,但默認斷點是以編程方式確定的,並且不一定是整數,除非具有整數值數據。

一個簡單的辦法是在breaks參數指定自己的休息:

histogram(~Time |factor(Bila), data=flexi2, subset=(Bila %in% c("")), 
    xlim= c(5, 15), ylim=c(0, 57), 
    breaks = 5:15, 
    scales = list(x = list(at = 5:15)), 
    xlab="Time") 

和示例:

library(lattice) 
x <- rnorm(1000) 
x[abs(x) > 3] <- 3 
x_breaks <- c(-3, -1.5, 0, 1.5, 3) 
histogram(~ x, 
      title = "Defaults") 
histogram(~ x, breaks = x_breaks, 
      title = "Custom bins, default tickmarks") 
histogram(~ x, scales = list(x = list(at = x_breaks)), 
      title = "Custom tickmarks, default bins") 
histogram(~ x, breaks = x_breaks, scales = list(x = list(at = x_breaks)), 
      title = "Custom tickmarks, custom bins")