R 在直方图中识别点

R 在直方图中识别点,r,histogram,interactive,R,Histogram,Interactive,在R中,我尝试使用鼠标以交互方式识别直方图中的bin值。我想我需要一些与散点图的identify()函数等价的东西。但是identify()似乎不适用于直方图。使用locator()查找点,然后查找值所在的间隔,确保它小于条形图的y值,然后返回计数: set.seed(100) h <- hist(rnorm(1:100)) # use locator() when doing this for real, i'm going to use a saved set of points #

在R中,我尝试使用鼠标以交互方式识别直方图中的bin值。我想我需要一些与散点图的identify()函数等价的东西。但是identify()似乎不适用于直方图。

使用
locator()
查找点,然后查找值所在的间隔,确保它小于条形图的y值,然后返回计数:

set.seed(100)
h <- hist(rnorm(1:100))

# use locator() when doing this for real, i'm going to use a saved set of points
#l <- locator()

l <- list(x = c(-2.22, -1.82, -1.26, -0.79,-0.57, -0.25, 0.18, 0.75, 
0.72, 1.26), y = c(1.46, 7.81, 3.79, 9.08, 17.11, 11.61, 15, 
17.96, 5.9, 3.37))

# for debugging purposes - the nth value of the output should match where
# the n value is shown on the histogram
text(l, labels=1:10, cex=0.7, font=2)

fi <- findInterval(l$x, h$breaks)
sel <- (l$y > 0)  & (l$y < h$counts[fi])
replace(h$counts[fi], !sel, NA)

#[1]  3 NA  9 14 NA 22 20 NA 13  7
set.seed(100)
H