我有一个二维六边形密度图,有许多点。我希望六边形内的计数以对数刻度显示,但我无法通过ggplot2弄清楚如何做到这一点。
这是一个简单的例子:
x <- runif(1000, 50, 100)
y <- rnorm(1000, mean = 10, sd = 8)
df <- as.data.frame(cbind(x, y))
ggplot(df, aes(x, y)) + stat_binhex()
答案 0 :(得分:8)
如果您未在fill
中指定,则..count..
美学默认为stat_binhex
。下面的代码生成与原始代码相同的图。
ggplot(df, aes(x, y)) + stat_binhex(aes(fill=..count..))
如果您想要计数的对数比例,那么解决方案非常简单:
ggplot(df, aes(x, y)) + stat_binhex(aes(fill=log(..count..)))
答案 1 :(得分:2)