Densité de noyau (ArcGIS Spatial Analyst)

Synthèse

Calcule une grandeur par unité de carte à partir d’entités ponctuelles ou polylignes à l’aide d’une fonction de noyau pour ajuster une surface régulièrement effilée à chaque point ou polyligne. Une interruption peut être utilisée pour modifier l’influence d’une entité lors du calcul de la densité de noyau.

Pour en savoir plus sur le fonctionnement de l’outil Densité de noyau

Illustration

Illustration de la densité de noyau
OutRas = KernelDensity(InPts, None, 30)

Utilisation

  • Les résultats produits par des valeurs très faibles ou très élevées dans le paramètre Population field (Champ de population) (population_field en Python) peuvent sembler peu intuitifs. Si la moyenne du champ de population est bien supérieure à 1 (comme c’est le cas des populations urbaines, par exemple), le rayon de recherche par défaut peut être très limité, ce qui risque de produire des anneaux de petite taille autour des points en entrée. Si la moyenne du champ de population est bien inférieure à 1, le rayon de recherche calculé risque de paraître démesurément élevé. Dans ces cas, vous pouvez indiquer votre propre rayon de recherche.

  • Le paramètre Output cell size (Taille de cellule en sortie) peut être défini par une valeur numérique ou obtenu à partir d’un jeu de données raster existant. Si la taille de cellule n’est pas explicitement spécifiée en tant que valeur de paramètre, elle est dérivée de l’environnement Cell Size (Taille de cellule), s’il est spécifié. Si la taille de cellule du paramètre ou la taille de cellule de l’environnement n’ont pas été spécifiées, mais que l’environnement Raster de capture a été défini, la taille de cellule du raster de capture est utilisée. Si aucun élément n’est spécifié, la taille de cellule résulte de la division par 250 de la largeur ou de la hauteur la plus petite (parmi les deux) de l’étendue spécifiée dans le système de coordonnées en sortie de l’environnement.

  • Si la taille de cellule est spécifiée à l’aide d’une valeur numérique, l’outil l’utilise directement pour le raster en sortie.

    Si la taille de cellule est spécifiée à l’aide d’un jeu de données raster, le paramètre affiche le chemin du jeu de données raster au lieu de la valeur de la taille de cellule. La taille de cellule de ce jeu de données raster sera utilisée directement dans l’analyse, à condition que la référence spatiale du jeu de données soit la même que la référence spatiale en sortie. Si la référence spatiale du jeu de données est différente de la référence spatiale en sortie, elle sera projetée en fonction de la valeur Cell Size Projection Method (Méthode de projection de la taille de cellule) spécifiée.

  • Des valeurs élevées pour le paramètre Search radius (Rayon de recherche) (search_radius en Python) produisent un raster de densité plus généralisé et plus lisse. Des valeurs basses produisent un raster offrant davantage de détails.

  • Le rayon de recherche par défaut est calculé en fonction de la configuration spatiale et du nombre de points en entrée. Cette approche corrige les points spatiaux aberrants (les quelques points en entrée très éloignés des autres) afin que le rayon de recherche ne soit pas exagérément élevé.

  • Si les unités du facteur d'échelle d'unité de surface sont petites par rapport aux entités (distance entre les points ou longueur des sections de lignes, selon le type d'entités), les valeurs en sortie peuvent être petites. Pour obtenir des valeurs plus grandes, sélectionnez le facteur d'échelle d'unité de surface correspondant à des unités plus grandes (par exemple, kilomètres carrés contre mètres carrés).

  • Le paramètre Output cell values (Valeurs des cellules en sortie) (out_cell_values en Python) indique ce que représentent les valeurs raster en sortie. Si l’option Densities (Densités) est sélectionnée, les valeurs représentent la densité de noyau par zone d’unité pour chaque cellule. Si l’option Expected counts (Volumes attendus) est sélectionnée, les valeurs représentent la densité de noyau par zone de cellule. L’équation qui calcule les volumes à partir des valeurs de densité est Volume = Densité × Surface.

  • L’option Planar (Planaire) dans le paramètre Method (Méthode) (method en Python) convient si l’analyse est exécutée à l’échelle locale avec une projection qui garantit avec précision le maintien de distances et de surfaces correctes. L’option Geodesic (Géodésique) convient si l’analyse est exécutée au niveau régional ou à grande échelle (par exemple, à l’aide de Web Mercator ou d’un système de coordonnées géographiques). Cette méthode tient compte de la courbure du sphéroïde et traite correctement les données situées près des pôles et la ligne internationale de changement de jour.

  • Seuls les points ou portions d’une ligne situés dans le voisinage sont pris en compte lors des calculs de densité. Si aucun point ou aucune section de ligne ne figure dans le voisinage d’une cellule particulière, la valeur NoData est affectée à cette cellule.

  • Pour les formats de données prenant en charge les valeurs nulles, par exemple les classes d’entités d’une géodatabase fichier, une valeur nulle est ignorée si elle est utilisée en entrée.

  • Pour plus d’informations sur les environnements de géotraitement qui s’appliquent à cet outil, reportez-vous à la rubrique Environnements d’analyse et Spatial Analyst.

  • Bibliographie :

    Silverman, B. W. Density Estimation for Statistics and Data Analysis. New York: Chapman and Hall, 1986.

Paramètres

ÉtiquetteExplicationType de données
Entités ponctuelles ou polylignes en entrée

Entités en entrée (ponctuelles ou linéaires) pour lesquelles calculer la densité.

Feature Layer
Champ de population

Champ indiquant les valeurs de population pour chaque entité. Le champ de population représente le total ou la quantité à répartir sur tout le paysage pour créer une surface continue.

Le champ Population peut contenir des valeurs entières ou à virgule flottante.

Les options et les comportements par défaut pour le champ sont répertoriés ci-dessous.

  • Utilisez Aucun si aucun attribut ni aucune valeur spéciale ne sont utilisés et si chaque entité est comptée une seule fois.

  • Vous pouvez utiliser le champ Shape si les entités en entrée contiennent des valeurs z.

  • Sinon, le champ par défaut est POPULATION. Les conditions suivantes peuvent également s’appliquer :

    • En l’absence de champ POPULATION, s'il existe un champ POPULATIONabcd, ce dernier est utilisé par défaut. Les 'abcd' peuvent correspondre à n’importe quels caractères valides, par exemple, POPULATION6, POPULATION1974 ou POPULATIONROADTYPE.
    • En l’absence de champ POPULATION ou POPULATIONabcd, s’il existe un champ POP, le champ POP est utilisé par défaut.
    • En l’absence de champ POPULATION, POPULATIONabcd ou POP, s’il existe un champ POPabcd, le champ POPabcd est utilisé par défaut.
    • En l’absence de champ POPULATION, POPULATIONabcd, POP ou POPabcd, la valeur NONE est utilisée par défaut.
Field
Taille de cellule en sortie
(Facultatif)

Taille de cellule du raster en sortie à créer.

Ce paramètre peut être défini par une valeur numérique ou obtenu à partir d’un jeu de données raster existant. Si la taille de cellule n’est pas explicitement spécifiée en tant que valeur de paramètre, la valeur de taille de cellule de l’environnement est utilisée si elle est spécifiée. Sinon, des règles supplémentaires sont utilisées pour la calculer à partir des autres entrées. Consultez la section Utilisation pour en savoir plus.

Analysis Cell Size
Rayon de recherche
(Facultatif)

Rayon de recherche dans lequel la densité est calculée. Les unités sont basées sur l'unité linéaire de la projection de la référence spatiale en sortie.

Par exemple, si les unités sont les mètres et que vous voulez inclure toutes les entités dans un voisinage d’un mile, définissez le rayon de recherche sur 1 609,344 (1 mile = 1 609,344 mètres).

Le rayon de recherche par défaut est calculé spécifiquement pour le jeu de données en entrée à l’aide d’une variante spatiale de la règle générale de Silverman (Silverman, 1986) qui est suffisamment fiable pour les points spatiaux aberrants (les quelques points très éloignés des autres). Pour une description de l’algorithme, reportez-vous aux conseils d’utilisation.

Double
Unités de surface
(Facultatif)

Spécifie les unités de surface utilisées pour les valeurs de densité en sortie.

Une unité par défaut est déterminée en fonction de l’unité linéaire de la référence spatiale en sortie. Vous pouvez la remplacer par l’unité appropriée pour convertir la densité en sortie. Les valeurs de densité de lignes convertissent les unités de longueur et de surface.

Si aucune référence spatiale en sortie n'est spécifiée, la référence spatiale en sortie sera identique à la classe d'entités en entrée. Les unités de densité en sortie par défaut sont déterminées par les unités linéaires de la référence spatiale en sortie. Si les unités linéaires en sortie sont les mètres, les unités de densité de la surface en sortie sont définies sur Square kilometers (Kilomètres carrés). Il en résulte, en sortie, des kilomètres carrés pour les entités ponctuelles ou des kilomètres par kilomètres carrés pour les entités polylignes. Si les unités linéaires en sortie sont les pieds, les unités de densité de la surface en sortie seront définies sur Square miles (Miles carrés).

Si les unités en sortie ne sont ni les pieds ni les mètres, les unités de densité de la surface en sortie sont définies sur Unité de carte au carré. Ainsi, les unités de densité en sortie représenteront le carré des unités linéaires de la référence spatiale en sortie. Par exemple, si les unités linéaires en sortie sont les centimètres, les unités de densité de la surface en sortie seront Square map units (Unité de carte au carré), ce qui se traduira par des centimètres carrés. Si les unités linéaires en sortie sont les kilomètres, les unités de densité de la surface en sortie seront Square map units (Unité de carte au carré), ce qui se traduira par des kilomètres carrés.

Les options disponibles et leurs unités de densité en sortie correspondantes sont les suivantes :

  • Unité de carte au carréLe carré des unités linéaires de la référence spatiale en sortie est utilisé.
  • Miles carrésLes miles américains sont utilisés.
  • Kilomètres carrésLes kilomètres sont utilisés.
  • AresLes acres américains sont utilisés.
  • HectaresLes hectares sont utilisés.
  • Yards carrésLes yards américains sont utilisés.
  • Pieds carrésLes pieds américains sont utilisés.
  • Pouces carrésLes pouces américains sont utilisés.
  • Mètres carrésLes mètres sont utilisés.
  • Centimètres carrésLes centimètres sont utilisés.
  • Millimètres carrésLes millimètres sont utilisés.
String
Valeurs des cellules en sortie
(Facultatif)

Indique ce que les valeurs du raster en sortie représentent.

Étant donné que la valeur de cellule est liée à la taille de cellule spécifiée, le raster généré ne peut pas être ré-échantillonné sur une taille de cellule différente.

  • DensitésLes valeurs en sortie représentent la densité calculée par zone d’unité pour chaque cellule. Il s’agit de l’option par défaut.
  • Volumes attendusLes valeurs en sortie représentent la densité calculée par zone de cellule.
String
Méthode
(Facultatif)

Indique si la méthode de la terre plate (planaire) ou du chemin le plus court sur un sphéroïde (géodésique) sera utilisée.

La méthode géodésique prend uniquement en charge les points comme entités en entrée.

  • planeLa distance planaire entre les entités est utilisée. Il s’agit de l’option par défaut.
  • GéodésiqueLa distance géodésique entre les entités est utilisée.
String
Entités interruptions en entrée
(Facultatif)

Jeu de données qui définit les interruptions.

Les interruptions peuvent être une couche d’entités polylignes ou surfaciques.

Feature Layer

Valeur renvoyée

ÉtiquetteExplicationType de données
Raster en sortie

Raster de densité de noyau en sortie.

Il s'agit toujours d'un raster à virgule flottante.

Raster

KernelDensity(in_features, population_field, {cell_size}, {search_radius}, {area_unit_scale_factor}, {out_cell_values}, {method}, {in_barriers})
NomExplicationType de données
in_features

Entités en entrée (ponctuelles ou linéaires) pour lesquelles calculer la densité.

Feature Layer
population_field

Champ indiquant les valeurs de population pour chaque entité. Le champ de population représente le total ou la quantité à répartir sur tout le paysage pour créer une surface continue.

Le champ Population peut contenir des valeurs entières ou à virgule flottante.

Les options et les comportements par défaut pour le champ sont répertoriés ci-dessous.

  • Utilisez Aucun si aucun attribut ni aucune valeur spéciale ne sont utilisés et si chaque entité est comptée une seule fois.

  • Vous pouvez utiliser le champ Shape si les entités en entrée contiennent des valeurs z.

  • Sinon, le champ par défaut est POPULATION. Les conditions suivantes peuvent également s’appliquer :

    • En l’absence de champ POPULATION, s'il existe un champ POPULATIONabcd, ce dernier est utilisé par défaut. Les 'abcd' peuvent correspondre à n’importe quels caractères valides, par exemple, POPULATION6, POPULATION1974 ou POPULATIONROADTYPE.
    • En l’absence de champ POPULATION ou POPULATIONabcd, s’il existe un champ POP, le champ POP est utilisé par défaut.
    • En l’absence de champ POPULATION, POPULATIONabcd ou POP, s’il existe un champ POPabcd, le champ POPabcd est utilisé par défaut.
    • En l’absence de champ POPULATION, POPULATIONabcd, POP ou POPabcd, la valeur NONE est utilisée par défaut.
Field
cell_size
(Facultatif)

Taille de cellule du raster en sortie à créer.

Ce paramètre peut être défini par une valeur numérique ou obtenu à partir d’un jeu de données raster existant. Si la taille de cellule n’est pas explicitement spécifiée en tant que valeur de paramètre, la valeur de taille de cellule de l’environnement est utilisée si elle est spécifiée. Sinon, des règles supplémentaires sont utilisées pour la calculer à partir des autres entrées. Consultez la section Utilisation pour en savoir plus.

Analysis Cell Size
search_radius
(Facultatif)

Rayon de recherche dans lequel la densité est calculée. Les unités sont basées sur l'unité linéaire de la projection de la référence spatiale en sortie.

Par exemple, si les unités sont les mètres et que vous voulez inclure toutes les entités dans un voisinage d’un mile, définissez le rayon de recherche sur 1 609,344 (1 mile = 1 609,344 mètres).

Le rayon de recherche par défaut est calculé spécifiquement pour le jeu de données en entrée à l’aide d’une variante spatiale de la règle générale de Silverman (Silverman, 1986) qui est suffisamment fiable pour les points spatiaux aberrants (les quelques points très éloignés des autres). Pour une description de l’algorithme, reportez-vous aux conseils d’utilisation.

Double
area_unit_scale_factor
(Facultatif)

Spécifie les unités de surface utilisées pour les valeurs de densité en sortie.

Une unité par défaut est déterminée en fonction de l’unité linéaire de la référence spatiale en sortie. Vous pouvez la remplacer par l’unité appropriée pour convertir la densité en sortie. Les valeurs de densité de lignes convertissent les unités de longueur et de surface.

Si aucune référence spatiale en sortie n'est spécifiée, la référence spatiale en sortie sera identique à la classe d'entités en entrée. Les unités de densité en sortie par défaut sont déterminées par les unités linéaires de la référence spatiale en sortie. Si les unités linéaires en sortie sont les mètres, les unités de densité de la surface en sortie sont définies sur Square kilometers (Kilomètres carrés). Il en résulte, en sortie, des kilomètres carrés pour les entités ponctuelles ou des kilomètres par kilomètres carrés pour les entités polylignes. Si les unités linéaires en sortie sont les pieds, les unités de densité de la surface en sortie seront définies sur Square miles (Miles carrés).

Si les unités en sortie ne sont ni les pieds ni les mètres, les unités de densité de la surface en sortie sont définies sur Unité de carte au carré. Ainsi, les unités de densité en sortie représenteront le carré des unités linéaires de la référence spatiale en sortie. Par exemple, si les unités linéaires en sortie sont les centimètres, les unités de densité de la surface en sortie seront Square map units (Unité de carte au carré), ce qui se traduira par des centimètres carrés. Si les unités linéaires en sortie sont les kilomètres, les unités de densité de la surface en sortie seront Square map units (Unité de carte au carré), ce qui se traduira par des kilomètres carrés.

Les options disponibles et leurs unités de densité en sortie correspondantes sont les suivantes :

  • SQUARE_MAP_UNITSLe carré des unités linéaires de la référence spatiale en sortie est utilisé.
  • SQUARE_MILESLes miles américains sont utilisés.
  • SQUARE_KILOMETERSLes kilomètres sont utilisés.
  • ACRESLes acres américains sont utilisés.
  • HECTARESLes hectares sont utilisés.
  • SQUARE_YARDSLes yards américains sont utilisés.
  • SQUARE_FEETLes pieds américains sont utilisés.
  • SQUARE_INCHESLes pouces américains sont utilisés.
  • SQUARE_METERSLes mètres sont utilisés.
  • SQUARE_CENTIMETERSLes centimètres sont utilisés.
  • SQUARE_MILLIMETERSLes millimètres sont utilisés.
String
out_cell_values
(Facultatif)

Indique ce que les valeurs du raster en sortie représentent.

  • DENSITIESLes valeurs en sortie représentent la densité calculée par zone d’unité pour chaque cellule. Il s’agit de l’option par défaut.
  • EXPECTED_COUNTSLes valeurs en sortie représentent la densité calculée par zone de cellule.

Étant donné que la valeur de cellule est liée à la taille de cellule spécifiée, le raster généré ne peut pas être ré-échantillonné sur une taille de cellule différente.

String
method
(Facultatif)

Indique si la méthode de la terre plate (planaire) ou du chemin le plus court sur un sphéroïde (géodésique) sera utilisée.

  • PLANARLa distance planaire entre les entités est utilisée. Il s’agit de l’option par défaut.
  • GEODESICLa distance géodésique entre les entités est utilisée.

La méthode géodésique prend uniquement en charge les points comme entités en entrée.

String
in_barriers
(Facultatif)

Jeu de données qui définit les interruptions.

Les interruptions peuvent être une couche d’entités polylignes ou surfaciques.

Feature Layer

Valeur renvoyée

NomExplicationType de données
out_raster

Raster de densité de noyau en sortie.

Il s'agit toujours d'un raster à virgule flottante.

Raster

Exemple de code

Exemple 1 d’utilisation de KernelDensity (fenêtre Python)

Cet exemple calcule un raster de densité lissée à partir d’un shapefile de points.

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")
Exemple 2 d’utilisation de KernelDensity (script autonome)

Cet exemple calcule un raster de densité lissée à partir d’un shapefile de points.

# 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")