Densidad kernel (Spatial Analyst)

Disponible con una licencia de Spatial Analyst.

Resumen

Calcula una magnitud por unidad de área a partir de entidades de punto o polilínea mediante una función kernel para adaptar una superficie suavemente estrechada a cada punto o polilínea. Se puede utilizar una barrera para alterar la influencia que ejerce una entidad durante el cálculo de densidad kernel.

Más información sobre cómo funciona Densidad kernel

Ilustración

Ilustración de Densidad kernel
OutRas = KernelDensity(InPts, None, 30)

Uso

  • Los valores más altos del parámetro Radio de búsqueda (search_radius en Python) producen un ráster de densidad más generalizado y más suave. Los valores inferiores producen un ráster que muestra más detalles.

  • Solo los puntos o las partes de una línea que caen dentro de la vecindad se consideran en el cálculo de la densidad. Si no cae ningún punto o sección de línea dentro de la vecindad de una celda en particular, se asigna NoData a esa celda.

  • Los valores muy altos o muy bajos del parámetro Campo de población (population_field en Python) pueden dar lugar a resultados que pueden parecer no intuitivos. Si el valor medio del campo de población es mucho mayor que 1 (por ejemplo, como sucede con las poblaciones en las ciudades), el radio predeterminado de búsqueda puede ser muy pequeño, lo cual generaría pequeños anillos alrededor de los puntos de entrada. Si el valor medio del campo de población es mucho menor que 1, el radio de búsqueda calculado puede ser injustificadamente grande. En estos casos, puede introducir su propio radio de búsqueda.

  • El Tamaño de celda de salida se puede definir mediante un valor numérico u obtenerse desde un dataset ráster existente. Si el tamaño de celda no se ha especificado explícitamente como el valor del parámetro, se deriva del entorno Tamaño de celda si se ha especificado. Si no se ha especificado el tamaño de celda del parámetro o el tamaño de celda del entorno, pero se ha configurado el entorno Ráster de alineación, se usa el tamaño de celda del ráster de alineación. Si no se especifica nada, el tamaño de celda se calcula a partir de la anchura o la altura de la extensión dividido por 250, donde la extensión se encuentra en el Sistema de coordenadas de salida especificado en el entorno.

  • Si el tamaño de celda se especifica usando un valor numérico, la herramienta lo usa directamente para el ráster de salida.

    Si el tamaño de celda se especifica mediante un dataset ráster, el parámetro muestra la ruta del dataset ráster en lugar del valor del tamaño de celda. El tamaño de celda de ese dataset ráster se usa directamente en el análisis, siempre que la referencia espacial del dataset sea la misma que la referencia espacial de salida. Si la referencia espacial del dataset es diferente a la referencia espacial de salida, se proyecta en función del Método de proyección de tamaño de celda seleccionado.

  • El radio de búsqueda predeterminado se calcula en función de la configuración espacial y el número de puntos de entrada. Este enfoque corrige la presencia de valores espaciales atípicos (puntos de entrada que están muy alejados del resto) de tal modo que estos puntos no generen un radio de búsqueda demasiado grande para ser razonable.

  • Si las unidades del factor de escala de la unidad de área son pequeñas en relación con las entidades (distancia entre los puntos o longitud de secciones de línea según el tipo de entidad), los valores de salida pueden ser pequeños. Para obtener valores más elevados seleccione el factor de escala de unidades para las unidades más elevadas (por ejemplo, kilómetros cuadrados frente a metros cuadrados).

  • Para los formatos de datos que admiten valores nulos, como las clases de entidad de geodatabase de archivos, se ignorará un valor nulo cuando se utilice como entrada.

  • El parámetro Valores de celda de salida (out_cell_values en Python) especifica lo que representan los valores de ráster de salida. Cuando se elige Densidad, los valores presentan el valor de densidad kernel por áreas de unidad correspondiente a cada celda. Si se elige Recuentos esperados, los valores representan la densidad kernel por área de celda. La ecuación con la que se calculan lo recuentos a partir de los valores de densidad es Recuento = Densidad × Área.

  • La opción Planar (PLANAR en Python) del parámetro Método (method en Python) resulta adecuada cuando el análisis se va a realizar a escala local con una proyección que mantiene el área y la distancia correctas de manera exacta. La opción Geodésico (GEODESIC en Python) es adecuada si el análisis se va a realizar a escala regional o a gran escala (por ejemplo, con Web Mercator o cualquier sistema de coordenadas geográficas). Este método tiene en cuenta la curvatura del esferoide y trata correctamente los datos cercanos a los polos y a la línea internacional de cambio de fecha.

  • Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento que se aplican a esta herramienta.

Parámetros

EtiquetaExplicaciónTipo de datos
Entidades de puntos o polilíneas de entrada

Las entidades de entrada (punto o línea) para las que se calculará la densidad.

Feature Layer
Campo de población

Campo que denota los valores de población para cada entidad. El campo de población es el recuento o la cantidad que se expandirá a lo largo del paisaje para crear una superficie continua.

Los valores del campo de población pueden ser enteros o de punto flotante.

A continuación se enumeran las opciones y los comportamientos predeterminados para los campos.

  • Use Ninguno si no se utilizará un elemento o valor especial y cada entidad se contará una sola vez.

  • Puede usar el campo Shape si las entidades de entrada contienen Z.

  • De lo contrario, el campo predeterminado es POPULATION. Además, pueden aplicarse las siguientes condiciones.

    • Si no hay ningún campo POPULATION pero hay un campo POPULATIONxxxx, este se usará de manera predeterminada. xxxx puede ser cualquier carácter válido, como, POPULATION6, POPULATION1974 y POPULATIONROADTYPE.
    • Si no hay ningún campo POPULATION ni POPULATIONxxxx, pero hay un campo POP, este se usará de manera predeterminada.
    • Si no hay ningún campo POPULATION, POPULATIONxxxx o POP, pero hay un campo POPxxxx, este se usará de manera predeterminada.
    • Si no hay ningún campo POPULATION, POPULATIONxxxx, POP o POPxxxx, se usará NONE de manera predeterminada.
Field
Tamaño de celda de salida
(Opcional)

El tamaño de celda del ráster de salida que se va a crear.

Este parámetro se puede definir mediante un valor numérico u obtenerse desde un dataset ráster existente. Si el tamaño de celda no se ha especificado explícitamente como valor de parámetro, se usa el valor del tamaño de celda del entorno si se ha especificado; de lo contrario, se utilizan reglas adicionales para calcularlo a partir de las otras entradas. Consulte la sección Uso para obtener más detalles.

Analysis Cell Size
Radio de búsqueda
(Opcional)

El radio de búsqueda dentro del cual se calcula la densidad. Las unidades están basadas en la unidad lineal de la proyección de la referencia espacial de salida.

Por ejemplo, si las unidades están expresadas en metros, para incluir todas las entidades dentro de una vecindad de una milla, establezca el radio de búsqueda en 1.609,344 (1 milla = 1.609,344 metros).

El radio de búsqueda predeterminado se calcula específicamente para el dataset de entrada utilizando una variante espacial de la Regla general de Silverman (Silverman, 1986) que es bastante sólida para los valores atípicos espaciales (puntos que están alejados de todos los demás). Consulte la descripción del algoritmo en las sugerencias de uso.

Double
Unidades de área
(Opcional)

Unidades de área de los valores de densidad de salida.

Una unidad predeterminada se selecciona según la unidad lineal de la referencia espacial de salida. Puede cambiarla a la unidad adecuada si desea convertir la salida de densidad. Los valores de la densidad de línea convierten las unidades de longitud y área.

Si no se especifica ninguna referencia espacial de salida, esta será la misma que la clase de entidad de entrada. Las unidades de densidad de salida predeterminadas se determinan mediante las unidades lineales de la referencia espacial de salida, como se indica a continuación. Si las unidades lineales de salida están expresadas en metros, las unidades de densidad de área de salida se establecerán en Kilómetros cuadrados para las entidades de punto o en kilómetros por kilómetros cuadrados para las entidades de polilínea. Si las unidades lineales de salida están expresadas en pies, las unidades de densidad de área de salida se establecerán en Millas cuadradas.

Si las unidades de salida están expresadas en otra unidad distinta de pies o metros, las unidades de densidad de área de salida se establecerán en Unidades de mapa cuadradas. Esto significa que las unidades de densidad de salida corresponderán a la parte cuadrada de las unidades lineales de la referencia espacial de salida. Por ejemplo, si las unidades lineales de salida están expresadas en centímetros, las unidades de densidad de área de salida serán Unidades de mapa cuadradas, lo que dará como resultado centímetros cuadrados. Si las unidades lineales de salida están expresadas en kilómetros, las unidades de densidad de área de salida serán Unidades de mapa cuadradas, lo que dará como resultado kilómetros cuadrados.

A continuación se indican las opciones disponibles y las unidades de densidad de salida correspondientes:

  • Unidades de mapa cuadradasPara el cuadrado de las unidades lineales de la referencia espacial de salida.
  • Millas cuadradasPara millas (EE. UU.).
  • Kilómetros cuadradosPara kilómetros.
  • AcresPara acres (EE. UU.).
  • HectáreasPara hectáreas.
  • Yardas cuadradasPara yardas (EE. UU.).
  • Pies cuadradosPies pies (EE. UU.).
  • Pulgadas cuadradasPara pulgadas (EE. UU.).
  • Metros cuadradosPara metros.
  • Centímetros cuadradosPara centímetros.
  • Milímetros cuadradosPara milímetros.
String
Valores de celda de salida
(Opcional)

Especifica qué representan los valores del ráster de salida.

Dado que el valor de la celda está vinculado al tamaño de celda especificado, el ráster resultante no se puede remuestrear con otro tamaño de celda.

  • DensidadesLos valores de salida representan el valor de densidad calculado por área de unidad para cada celda. Esta es la opción predeterminada.
  • Recuentos esperadosLos valores de salida representan el valor de densidad calculado por área de celda.
String
Método
(Opcional)

Especifica si se va a utilizar la tierra plana (planar) o la ruta más corta en un método de esferoide (geodésico).

El método geodésico solo admite puntos como entidades de entrada.

  • PlanarSe utilizará la distancia planar entre entidades. Esta es la opción predeterminada.
  • GeodésicoSe utilizará la distancia geodésica entre entidades.
String
Entidades de barreras de entrada
(Opcional)

El dataset que define las barreras.

La barreras pueden ser una capa de entidades de polígono o polilínea.

Feature Layer

Valor de retorno

EtiquetaExplicaciónTipo de datos
Ráster de salida

El ráster de densidad kernel de salida.

Siempre es un ráster de punto flotante.

Raster

KernelDensity(in_features, population_field, {cell_size}, {search_radius}, {area_unit_scale_factor}, {out_cell_values}, {method}, {in_barriers})
NombreExplicaciónTipo de datos
in_features

Las entidades de entrada (punto o línea) para las que se calculará la densidad.

Feature Layer
population_field

Campo que denota los valores de población para cada entidad. El campo de población es el recuento o la cantidad que se expandirá a lo largo del paisaje para crear una superficie continua.

Los valores del campo de población pueden ser enteros o de punto flotante.

A continuación se enumeran las opciones y los comportamientos predeterminados para los campos.

  • Use Ninguno si no se utilizará un elemento o valor especial y cada entidad se contará una sola vez.

  • Puede usar el campo Shape si las entidades de entrada contienen Z.

  • De lo contrario, el campo predeterminado es POPULATION. Además, pueden aplicarse las siguientes condiciones.

    • Si no hay ningún campo POPULATION pero hay un campo POPULATIONxxxx, este se usará de manera predeterminada. xxxx puede ser cualquier carácter válido, como, POPULATION6, POPULATION1974 y POPULATIONROADTYPE.
    • Si no hay ningún campo POPULATION ni POPULATIONxxxx, pero hay un campo POP, este se usará de manera predeterminada.
    • Si no hay ningún campo POPULATION, POPULATIONxxxx o POP, pero hay un campo POPxxxx, este se usará de manera predeterminada.
    • Si no hay ningún campo POPULATION, POPULATIONxxxx, POP o POPxxxx, se usará NONE de manera predeterminada.
Field
cell_size
(Opcional)

El tamaño de celda del ráster de salida que se va a crear.

Este parámetro se puede definir mediante un valor numérico u obtenerse desde un dataset ráster existente. Si el tamaño de celda no se ha especificado explícitamente como valor de parámetro, se usa el valor del tamaño de celda del entorno si se ha especificado; de lo contrario, se utilizan reglas adicionales para calcularlo a partir de las otras entradas. Consulte la sección Uso para obtener más detalles.

Analysis Cell Size
search_radius
(Opcional)

El radio de búsqueda dentro del cual se calcula la densidad. Las unidades están basadas en la unidad lineal de la proyección de la referencia espacial de salida.

Por ejemplo, si las unidades están expresadas en metros, para incluir todas las entidades dentro de una vecindad de una milla, establezca el radio de búsqueda en 1.609,344 (1 milla = 1.609,344 metros).

El radio de búsqueda predeterminado se calcula específicamente para el dataset de entrada utilizando una variante espacial de la Regla general de Silverman (Silverman, 1986) que es bastante sólida para los valores atípicos espaciales (puntos que están alejados de todos los demás). Consulte la descripción del algoritmo en las sugerencias de uso.

Double
area_unit_scale_factor
(Opcional)

Unidades de área de los valores de densidad de salida.

Una unidad predeterminada se selecciona según la unidad lineal de la referencia espacial de salida. Puede cambiarla a la unidad adecuada si desea convertir la salida de densidad. Los valores de la densidad de línea convierten las unidades de longitud y área.

Si no se especifica ninguna referencia espacial de salida, esta será la misma que la clase de entidad de entrada. Las unidades de densidad de salida predeterminadas se determinan mediante las unidades lineales de la referencia espacial de salida, como se indica a continuación. Si las unidades lineales de salida están expresadas en metros, las unidades de densidad de área de salida se establecerán en Kilómetros cuadrados para las entidades de punto o en kilómetros por kilómetros cuadrados para las entidades de polilínea. Si las unidades lineales de salida están expresadas en pies, las unidades de densidad de área de salida se establecerán en Millas cuadradas.

Si las unidades de salida están expresadas en otra unidad distinta de pies o metros, las unidades de densidad de área de salida se establecerán en Unidades de mapa cuadradas. Esto significa que las unidades de densidad de salida corresponderán a la parte cuadrada de las unidades lineales de la referencia espacial de salida. Por ejemplo, si las unidades lineales de salida están expresadas en centímetros, las unidades de densidad de área de salida serán Unidades de mapa cuadradas, lo que dará como resultado centímetros cuadrados. Si las unidades lineales de salida están expresadas en kilómetros, las unidades de densidad de área de salida serán Unidades de mapa cuadradas, lo que dará como resultado kilómetros cuadrados.

A continuación se indican las opciones disponibles y las unidades de densidad de salida correspondientes:

  • SQUARE_MAP_UNITSPara el cuadrado de las unidades lineales de la referencia espacial de salida.
  • SQUARE_MILESPara millas (EE. UU.).
  • SQUARE_KILOMETERSPara kilómetros.
  • ACRESPara acres (EE. UU.).
  • HECTARESPara hectáreas.
  • SQUARE_YARDSPara yardas (EE. UU.).
  • SQUARE_FEETPies pies (EE. UU.).
  • SQUARE_INCHESPara pulgadas (EE. UU.).
  • SQUARE_METERSPara metros.
  • SQUARE_CENTIMETERSPara centímetros.
  • SQUARE_MILLIMETERSPara milímetros.
String
out_cell_values
(Opcional)

Especifica qué representan los valores del ráster de salida.

  • DENSITIESLos valores de salida representan el valor de densidad calculado por área de unidad para cada celda. Esta es la opción predeterminada.
  • EXPECTED_COUNTSLos valores de salida representan el valor de densidad calculado por área de celda.

Dado que el valor de la celda está vinculado al tamaño de celda especificado, el ráster resultante no se puede remuestrear con otro tamaño de celda.

String
method
(Opcional)

Especifica si se va a utilizar la tierra plana (planar) o la ruta más corta en un método de esferoide (geodésico).

  • PLANARSe utilizará la distancia planar entre entidades. Esta es la opción predeterminada.
  • GEODESICSe utilizará la distancia geodésica entre entidades.

El método geodésico solo admite puntos como entidades de entrada.

String
in_barriers
(Opcional)

El dataset que define las barreras.

La barreras pueden ser una capa de entidades de polígono o polilínea.

Feature Layer

Valor de retorno

NombreExplicaciónTipo de datos
out_raster

El ráster de densidad kernel de salida.

Siempre es un ráster de punto flotante.

Raster

Muestra de código

Ejemplo 1 de KernelDensity (ventana de Python)

En este ejemplo se calcula un ráster de densidad suavizada a partir de un shapefile de puntos.

from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outKDens = KernelDensity("rec_sites.shp", " ", 45, 1200, "SQUARE_KILOMETERS",
                         " ", "GEODESIC")
outKDens.save("C:/sapyexamples/output/KD_out.tif")
Ejemplo 2 de KernelDensity (script independiente)

En este ejemplo se calcula un ráster de densidad suavizada a partir de un shapefile de puntos.

# Name: KernelDensity_Ex_02.py
# Description: Calculates the ozone concentration pattern divided by
#              Sierra Nevada Mountain in California
#              based on the point samples using a kernel function to
#              fit a smoothly tapered surface.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inFeatures = "ozone_california.shp"
populationField = "OZONE"
cellSize = 60
searchRadius = 2500
inBarriers = "SierraNevada.shp"

# Execute KernelDensity
outKernelDensity = KernelDensity(inFeatures, populationField, cellSize, searchRadius,
                                 "SQUARE_KILOMETERS", "DENSITIES", "PLANAR", inBarriers)

# Save the output 
outKernelDensity.save("C:/sapyexamples/output/KD_ozone_california.tif")

Información de licenciamiento

  • Basic: Requiere Spatial Analyst
  • Standard: Requiere Spatial Analyst
  • Advanced: Requiere Spatial Analyst

Temas relacionados