R中的核密度散点图
Kernel density scatter plot in R
我看到了一个 beautiful plot,我想重新创建它。下面是一个示例,展示了我到目前为止所获得的内容:
# kernel density scatterplot
library(RColorBrewer)
library(MASS)
greyscale <- rev(brewer.pal(4, "Greys"))
x <- rnorm(20000, mean=5, sd=4.5); x <- x[x>0]
y <- x + rnorm(length(x), mean=.2, sd=.4)
z <- kde2d(x, y, n=100)
plot(x, y, pch=".", col="hotpink")
contour(z, drawlabels=FALSE, nlevels=4, col=greyscale, add=T)
abline(c(0,1), lty=1, lwd=2)
abline(lm(y~x), lty=2, lwd=2)
我正在努力用颜色填充轮廓。这是 smoothScatter
或其他包裹的工作吗?我怀疑这可能取决于我对 kde2d
的使用,如果是这样,有人可以解释一下这个功能或者 link 给我一个好的教程吗?
非常感谢!
P.S。最终图像应该是灰度
您似乎想要填充轮廓而不只是轮廓。也许
library(RColorBrewer)
library(MASS)
greyscale <-brewer.pal(5, "Greys")
x <- rnorm(20000, mean=5, sd=4.5); x <- x[x>0]
y <- x + rnorm(length(x), mean=.2, sd=.4)
z <- kde2d(x, y, n=100)
filled.contour(z, nlevels=4, col=greyscale, plot.axes = {
axis(1); axis(2)
#points(x, y, pch=".", col="hotpink")
abline(c(0,1), lty=1, lwd=2)
abline(lm(y~x), lty=2, lwd=2)
})
这给出了
我看到了一个 beautiful plot,我想重新创建它。下面是一个示例,展示了我到目前为止所获得的内容:
# kernel density scatterplot
library(RColorBrewer)
library(MASS)
greyscale <- rev(brewer.pal(4, "Greys"))
x <- rnorm(20000, mean=5, sd=4.5); x <- x[x>0]
y <- x + rnorm(length(x), mean=.2, sd=.4)
z <- kde2d(x, y, n=100)
plot(x, y, pch=".", col="hotpink")
contour(z, drawlabels=FALSE, nlevels=4, col=greyscale, add=T)
abline(c(0,1), lty=1, lwd=2)
abline(lm(y~x), lty=2, lwd=2)
我正在努力用颜色填充轮廓。这是 smoothScatter
或其他包裹的工作吗?我怀疑这可能取决于我对 kde2d
的使用,如果是这样,有人可以解释一下这个功能或者 link 给我一个好的教程吗?
非常感谢!
P.S。最终图像应该是灰度
您似乎想要填充轮廓而不只是轮廓。也许
library(RColorBrewer)
library(MASS)
greyscale <-brewer.pal(5, "Greys")
x <- rnorm(20000, mean=5, sd=4.5); x <- x[x>0]
y <- x + rnorm(length(x), mean=.2, sd=.4)
z <- kde2d(x, y, n=100)
filled.contour(z, nlevels=4, col=greyscale, plot.axes = {
axis(1); axis(2)
#points(x, y, pch=".", col="hotpink")
abline(c(0,1), lty=1, lwd=2)
abline(lm(y~x), lty=2, lwd=2)
})
这给出了