Постройте плотность 2D-ядра из кадра данных: установите количество позиций сетки, полосу пропускания и пределы

введите здесь описание изображенияУ меня есть фрейм данных из двух столбцов, представляющих, соответственно, мои координаты "x" и "y" . Я хочу построить их на графике плотности 2D-ядра. У меня 91 балл. Поэтому я использовал этот скрипт:

x<-read.csv("X_Y.csv", sep=",")
d<-as.matrix(x)
Dgeo<-d[,1]
Dgen<-d[,2] 
dens <- kde2d(Dgeo,Dgen, n=?, lims=c(?,?,?,?))
myPal <- colorRampPalette(c("white","blue","gold", "orange", "red"))
plot(Dgeo, Dgen, pch=20,cex=.5)
image(dens, col=transp(myPal(300),.7), add=TRUE) 
abline(lm(Dgen~Dgeo)) 

Я не понимаю, как я могу оценить значения, которые я указал как "?".

У вас есть идеи?

На картинке показано, что я хотел бы получить, а справа то, что на самом деле я получаю, используя n=91 и lims=c(-.1, 1.5,-.5,4).


person CafféSospeso    schedule 17.06.2015    source источник
comment
Почему вы оцениваете пределы? Что-то не так со значениями по умолчанию диапазона x и y? Количество точек сетки зависит от глубины и плотности данных. Обычно я просто пробую пару значений, пока не получу значение, которое дает мне хорошее представление о данных.   -  person cr1msonB1ade    schedule 17.06.2015
comment
Собственно, это скрипт, который я нашел в туториале 3 Введения в адегенет, для раздела изоляции по расстоянию. Выкладываю фото того, что у меня получится.   -  person CafféSospeso    schedule 18.06.2015


Ответы (1)


Вы можете просто сделать

library(MASS)
set.seed(0)
dat <- data.frame(x=rnorm(100), y=rnorm(100, 2))
dens <- kde2d(dat$x, dat$y)
image(dens)
contour(dens, add=T)

введите здесь описание изображения

Не уверен, где функция transp для цвета

person Rorschach    schedule 17.06.2015