Densité de point (Spatial Analyst)

Disponible avec une licence Spatial Analyst.

Résumé

Calcule une grandeur par unité de carte à partir d'entités ponctuelles qui se trouvent dans le voisinage donné de chaque cellule.

Pour en savoir plus sur le fonctionnement de l'outil Densité de points

Illustration

Illustration de l’outil Densité de points
OutRas = PointDensity(InPts, None, 30)

Utilisation

  • Seuls les points situés dans le voisinage sont considérés lors du calcul de la densité. Si aucun point n'est situé dans le voisinage d'une cellule particulière, la valeur NoData est attribuée à cette dernière.

  • Les valeurs sur le raster en sortie seront toujours à virgule flottante.

  • La taille de cellule en sortie (champ Output cell size) peut être définie par une valeur numérique ou obtenue à partir d’un jeu de données raster. Si la taille de cellule n’a pas été spécifiée de manière explicite comme étant la valeur du paramètre, elle est dérivée de l’environnement de taille de cellule si celui-ci a été spécifié. Lorsque ni le paramètre ni l’environnement de taille de cellule n’a été spécifié, mais que l’environnement Snap Raster (Raster de capture) est défini, c’est la taille de cellule du raster de capture qui est utilisée. Si aucun élément n’est spécifié, la taille de cellule est calculée d’après la largeur ou la hauteur la plus petite (selon celle qui est la plus petite des deux) de l’étendue spécifiée dans le système de coordonnées en sortie (option Output Coordinate System) de l’environnement, divisée par 250.

  • 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 identique à la référence spatiale en sortie. Si la référence spatiale du jeu de données diffère de la référence spatiale en sortie, elle sera projetée d’après la valeur du champ Cell Size Projection Method (Méthode de projection de la taille de cellule).

  • Des valeurs élevées au niveau du paramètre du rayon de recherche produisent un raster de densité plus généralisé. Des valeurs basses produisent un raster offrant davantage de détails.

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

  • Si les unités du facteur d'échelle d'unité de surface sont petites par rapport à la distance entre les points, les valeurs de raster en sortie peuvent être petites. Pour obtenir des valeurs plus grandes, utilisez 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).

  • 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.

Syntaxe

PointDensity(in_point_features, population_field, {cell_size}, {neighborhood}, {area_unit_scale_factor})
ParamètreExplicationType de données
in_point_features

Entités ponctuelles en entrée pour lesquelles la densité est calculée.

Feature Layer
population_field

Champ indiquant les valeurs de population pour chaque point. Le champ Population représente le total ou la quantité à utiliser dans le calcul d'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 (Forme) 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 POPULATIONxxxx, celui-ci est utilisé par défaut. Les xxxx peuvent être tout caractère valide, par exemple, POPULATION6, POPULATION1974 et POPULATIONROADTYPE.
    • En l’absence de champ POPULATION ou POPULATIONxxxx, s’il existe un champ POP, celui-ci est utilisé par défaut.
    • En l’absence de champ POPULATION, POPULATIONxxxx ou POP, s’il existe un champ POPxxxx, celui-ci est utilisé par défaut.
    • En l’absence de champ POPULATION, POPULATIONxxxx, POP ou POPxxxx, NONE (AUCUN) est utilisé par défaut.
Field
cell_size
(Facultatif)

La taille de cellule du jeu de données raster en sortie sera créée.

Ce paramètre peut être défini par une valeur numérique ou obtenu à partir d’un jeu de données raster. Si la taille de cellule n’est pas explicitement spécifiée en tant que valeur de paramètre, la valeur de la taille de cellule de l’environnement sera utilisée dans la mesure où elle est définie. Dans le cas contraire, le calcul fera appel à des règles supplémentaires pour la déterminer à partir d’autres données en entrée. Pour en savoir plus, consultez la section relative à l’utilisation.

Analysis Cell Size
neighborhood
(Facultatif)

Dicte la forme de la zone autour de chaque cellule utilisée pour calculer la valeur de la densité.

Ceci est une classe Neighborhood.

Il existe quatre types de classe de voisinage : NbrAnnulus, NbrCircle, NbrRectangle, et NbrWedge.

Les formes et descriptions de ces classes sont :

  • NbrAnnulus ({innerRadius}, {outerRadius}, {units})

    Voisinage en forme de tore (anneau) défini par un rayon intérieur et un rayon extérieur.

  • NbrCircle ({radius}, {units})

    Voisinage circulaire doté d'un rayon donné.

  • NbrRectangle ({width}, {height}, {units})

    Voisinage rectangulaire doté d'une hauteur et d'une largeur données.

  • NbrWedge ({radius}, {startAngle}, {endAngle}, {units})

    Voisinage en forme de secteur (camembert). Un secteur est spécifié par un angle de départ, un angle d'arrivée et un rayon. Il s'étend dans le sens anti-horaire, de l'angle de départ vers l'angle d'arrivée. Les angles sont exprimés en degrés arithmétiques (dans le sens anti-horaire à partir de l'axe positif des x). Vous pouvez utiliser des angles négatifs.

  • {units}

    Définit les unités comme le nombre de cellules ou comme une valeur dans les unités de carte.

La valeur par défaut est NbrCircle, où radius est la largeur ou la hauteur la plus faible de l'étendue en sortie dans la référence spatiale en sortie, divisée par 30.

Neighborhood
area_unit_scale_factor
(Facultatif)

Unités de surface des valeurs de densité en sortie.

Une unité par défaut est sélectionné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 si vous souhaitez 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, comme suit. 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 seront définies sur Square map units (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_UNITSPour le carré des unités linéaires de la référence spatiale en sortie.
  • SQUARE_MILESPour les miles (U.S.).
  • SQUARE_KILOMETERSPour les kilomètres.
  • ACRESPour les acres (U.S.).
  • HECTARESPour les hectares.
  • SQUARE_YARDSPour les yards (U.S.).
  • SQUARE_FEETPour les pieds (U.S.).
  • SQUARE_INCHESPour les pouces (U.S.).
  • SQUARE_METERSPour les mètres.
  • SQUARE_CENTIMETERSPour les centimètres.
  • SQUARE_MILLIMETERSPour les millimètres.
String

Valeur renvoyée

NomExplicationType de données
out_raster

Raster de densité de points en sortie.

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

Raster

Exemple de code

Exemple 1 d'utilisation de l'outil PointDensity (fenêtre Python)

Cet exemple calcule un raster de densité à partir d'un fichier de formes ponctuelles.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
pdensOut = PointDensity("rec_sites.shp", "NONE", 60, NbrCircle(2500, "MAP"))
pdensOut.save("C:/sapyexamples/output/pointdensity")
Exemple 2 d'utilisation de l'outil PointDensity (script autonome)

Cet exemple calcule un raster de densité à partir d'un fichier de formes ponctuelles.

# Name: PointDensity_Ex_02.py
# Description: Calculates a magnitude per unit area from point 
#    features that fall within a neighborhood around each cell.
# 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 = "rec_sites.shp"
populationField = "NONE"
cellSize = 60

# Create the Neighborhood Object
radius = 2500
myNbrCirc = NbrCircle(radius, "MAP")

# Execute PointDensity
outPdens = PointDensity(inFeatures, populationField, cellSize, 
                        myNbrCirc, "SQUARE_KILOMETERS")

# Save the output 
outPdens.save("C:/sapyexamples/output/outpdens")

Informations de licence

  • Basic: Requiert Spatial Analyst
  • Standard: Requiert Spatial Analyst
  • Advanced: Requiert Spatial Analyst

Rubriques connexes