繁体   English   中英

如何在 R 中没有外部库的情况下将原始数据添加到轮廓 plot?

[英]How to add the original data to a contour plot without external libraries in R?

我在 R 中有一个标准的未填充轮廓 plot。 它有两个区域,是使用 KDE function 生成的。 它看起来被标准化为 0 和 1 之间。我想 plot 上的原始数据但是 R 似乎只是 plot 每次单独的图表上的数据。 我尝试过使用lines() 和points()。 So my two questions are: 1) how do you un-normalise a contour plot (did KDE normalise the output?) and 2) how do you plot the original data over a contour plot?

骨架代码:

data.kde <- kde(data)
plot(data)
contour(data.kde$estimate, add=TRUE)

我不确定 add=TRUE 语句是否有效,因为数据的比例不同,因为我的轮廓 plot 已经标准化为 0 到 1 之间。如果我标准化我的原始数据,它与它应该在轮廓 - 两个数据中心稍微偏离轮廓中心。

假设你的数据是这样的:

library(ks)

set.seed(1)
x    <- rnorm(100)
y    <- rnorm(100)
data <- cbind(x, y)

然后你可以这样做:

KDE <- kde(data)

plot(KDE, drawpoints = TRUE)

在此处输入图像描述

或者如果你想使用contour

contour(x = KDE$eval.points[[1]], y = KDE$eval.points[[2]], z = KDE$estimate)
points(KDE$x[,1], KDE$x[,2])

在此处输入图像描述 代表 package (v2.0.1) 于 2022 年 2 月 3 日创建

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM