6 votos

¿Qué indica en rango de hogar terreno sombreado?

He simulado un rango de hogar en R usando el clusthr función de la adehabitatHR paquete. El rango de hogar es de 50 coordenadas x,y. La salida está conectada.

enter image description here

Estoy tratando de tener claro lo que el sombreado indica. El sombreado está claramente relacionada con el tamaño del polígono. Pequeños polígonos = sombreado más oscuro, más polígonos = más pálida sombra. Pero, ¿cómo exactamente es un polígono asignado una sombra? ¿El sombreado representan un porcentaje del área cubierta?

8voto

cjstehno Puntos 131

Esto no parece ser documentado en la clusthr página de manual, pero debido a que el código fuente está disponible, podemos tratar de averiguar.

Escribiendo

> clusthr

en la R de símbolo de sistema (se muestra como la inicial >), se puede ver el código. Es opaco, pero un rápido vistazo indica que (1) no hay ninguna trama o de selección de color pasando y (2) la agrupación se realiza con una llamada a una función C. No hay trazado debido a que este código sólo produce un objeto que va a ser trazados más tarde con plot.

La versión de plot es determinado por la clase del objeto devuelto por clusthr: los médicos dicen que esta es una clase denominada "MCHu". Por lo tanto nos inspeccionar el código de su correspondiente trazado de la función escribiendo

> plot.MCHu

Aquí es una parte clave de la salida:

...
co <- grey(c(1:nrow(df))/nrow(df))
plot(x, col = co, ...)
...

Evidentemente, los colores se graduó de la oscuridad a la luz, incluso incrementos y asignados a los polígonos en el orden en que se encuentran en la MCHu objeto. En este punto podemos hacer algo de ingeniería inversa mediante la generación de un objeto utilizando el ejemplo de la clusthr página de manual:

> data(puechabonsp)
> lo<-puechabonsp$relocs[,1]
> res <- clusthr(lo)

Una solicitud str(res) a inspeccionar la estructura de res se encontró con una enorme cantidad de resultados, que por lo tanto es casi inútil, pero es evidente que esto es una lista, así que vamos a intentar inspeccionar la estructura de su primer elemento:

> str(res[[1]])

Esta vez el resultado es manejable (aunque siendo ridículamente largo de una pequeña cantidad de información). Comienza

Formal class 'SpatialPolygonsDataFrame' [package "sp"] with 5 slots
  ..@ data       :'data.frame': 22 obs. of  2 variables:
  .. ..$ percent: num [1:22] 10 13.3 23.3 26.7 36.7 ...
  .. ..$ area   : num [1:22] 0.0179 0.0457 0.0664 0.0947 0.2717 ...
  ..@ polygons   :List of 22

OK, los polígonos son lo que nos interesa, así que vamos a inspeccionar su estructura, pero esta vez vamos a ser un poco cauteloso. Ya que son una lista, vamos a inspeccionar sólo la primera:

> res[[1]]@polygons[[1]]

An object of class "Polygons"
Slot "Polygons":
[[1]]
An object of class "Polygon"
Slot "labpt":
[1]  698994.7 3161001.7

Slot "area":
[1] 179
...

OK--en la area de la ranura hay algo interesante relacionado con la hipótesis de que el sombreado corresponde al polígono tamaño. (En realidad, hay dos area ranuras en este objeto: probablemente alguien extendido una clase que incluye un area de la ranura, pero que, inadvertidamente, se añadió otro; sólo uno de ellos será accesible a través de la @area construir.) Vamos a imprimir esas áreas, con el fin de:

> sapply(1:length(res[[1]]@polygons), function(i) res[[1]]@polygons[[i]]@area)

 [1]    179.0    456.5    663.5    947.0   2717.0   7928.5   9761.5  12790.5
 [9]  14839.0  16404.0  18100.0  18325.0  23731.5  37658.5  58793.0  70735.5
[17]  82063.0 105812.5 182443.0 226467.0 252571.5 405963.5

Los polígonos parecen ser ordenados por el aumento de área. Esto es cierto para los otros tres componentes de la res (como podemos encontrar por repetir el comando anterior, reemplazando res[[1]] por res[[2]], etc.) Asumiendo que esto es siempre el caso de que clusthr órdenes de los polígonos mediante el aumento de área, podemos tentativamente a la conclusión de que la ligereza corresponde a los rangos de las áreas del polígono, con el más ligero de los polígonos con mayor área.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X