Tabular intersección (Análisis)

Resumen

Calcula la intersección entre dos clases de entidad y realiza una tabulación cruzada del área, longitud o recuento de las entidades que se intersecan.

Ilustración

Ilustración de la herramienta Tabular intersección

Uso

  • Una zona se compone de todas las entidades del parámetro Entidades de zona de entrada que tienen los mismos valores en el parámetro Campos de zona. De forma similar, una clase se compone de todas las entidades del parámetro Entidades de clase de entrada que tienen los mismos valores en el parámetro Campos de clase. Las entidades no tienen que ser contiguas para estar en la misma zona o clase. Esta herramienta calcula cuánto de la zona se interseca por cada clase (área y porcentaje del área de zona).

  • Si no se especifica ningún valor para Campos de clase, todas las entidades del parámetro Entidades de clase de entrada se considerarán una sola clase. El valor de Tabla de salida contendrá un registro para cada zona.

  • Si se especifica un valor para Campos de clase, el valor de Tabla de salida contendrá n registros para cada zona, donde n es el número de clases dentro de esa zona. Por ejemplo, si una zona contiene cuatro clases, el valor de Tabla de salida contendrá cuatro registros para esa zona.

  • Los atributos numéricos del parámetro Entidades de clase de entrada se pueden sumar por zona con el parámetro Sumar campos. Los valores de suma de una clase representan una proporción de los valores de suma basada en el porcentaje de la clase que interseca la zona.

    Precaución:

    Utilice campos con valores absolutos (no valores normalizados relativos, como porcentajes o densidades) en Campos de suma, dado que los valores pueden dividirse y distribuirse en diferentes zonas.

  • No se admite el uso de un valor de dimensión Entidades de clase de entrada mayor que el valor de Entidades de zona de entrada.

    • Si los valores de Entidades de zona de entrada son puntos, los valores de Entidades de clase de entrada no pueden ser polígonos ni líneas.
    • Si los valores de Entidades de zona de entrada son líneas, los valores de Entidades de clase de entrada no pueden ser polígonos.

  • Si los valores de Entidades de zona de entrada y las Entidades de clase de entrada son polígonos, las estadísticas de la tabla de salida se basarán en cálculos de área.

    Si los valores de Entidades de clase de entrada son líneas, las estadísticas de la tabla de salida se basarán en cálculos lineales.

    Si los valores de Entidades de clase de entrada son puntos, las estadísticas de la tabla de salida se basarán en recuentos de entidades.

  • Si los valores de Entidades de zona de entrada y Entidades de clase de entrada presentan la misma dimensión (es decir, ambas son polígonos, líneas o puntos), el campo PERCENTAGE de salida registra el porcentaje de la entidad de zona que se interseca por la clase.

    Si los valores de Entidades de zona de entrada y Entidades de clase de entrada presentan dimensiones diferentes (zona poligonal con clase de línea, zona poligonal con clase de punto, o zona lineal con clase de punto), el campo PERCENTAGE de salida registra el porcentaje de la clase que interseca la zona poligonal.

    Es posible que el campo PERCENTAGE registre un valor porcentual superior al 100 cuando existen entidades superpuestas en los parámetros Entidades de zona de entrada o Entidades de clase de entrada.

  • El campo AREA se incluye en la tabla de salida solo si los valores de Entidades de zona de entrada y Entidades de clase de entrada son polígonos. El campo AREA contiene el área de los valores de Entidades de zona de entrada que intersecan los valores de Entidades de clase de entrada.

    El campo LENGTH se incluye en la tabla de salida si los valores de Entidades de clase de entrada son líneas. El campo LENGTH contiene la longitud de la intersección entre los valores de Entidades de zona de entrada y Entidades de clase de entrada.

    El campo PNT_COUNT se incluye en la tabla de salida si los valores de Entidades de clase de entrada son puntos. El campo PNT_COUNT contiene el número de puntos de Entidades de clase de entrada que intersecan los valores de Entidades de zona de entrada.

  • Al usar capas de entidades, si cualquiera de las entidades está seleccionada, solamente las entidades seleccionadas se usan en los cálculos.

  • La determinación de la intersección de entidades de zona y clase sigue las mismas reglas que la herramienta Intersecar.

  • Utilice la herramienta Tabla pivote para transformar el valor de Tabla de salida en una tabla que contenga un registro para cada zona, con clases de atributos como campos de atributo individuales. Rellene los parámetros de la herramienta Tabla pivote de la siguiente forma:

    • Tabla de entrada: Tabular intersección Tabla de salida
    • Campos de entrada: Tabular intersección Campos de zona
    • Campo Pivote: Tabular intersección Campos de clase
    • Campo de valor: Tabular intersección Campos de suma o AREA, LENGTH, PERCENTAGE
    Ejemplo de salida de Tabla pivote

Parámetros

EtiquetaExplicaciónTipo de datos
Entidades de zona de entrada

Las entidades utilizadas para identificar zonas.

Feature Layer
Campos de zona

El campo o los campos de atributo que se utilizará para definir zonas.

Field
Entidades de clase de entrada

Las entidades utilizadas para identificar clases.

Feature Layer
Tabla de Salida

La tabla que contendrá la tabulación cruzada de intersecciones entre zonas y clases.

Table
Campos de clase
(Opcional)

El campo o campos de atributo utilizados para definir las clases.

Field
Campos de suma
(Opcional)

Los campos que se sumarán del parámetro Entidades de clase de entrada.

Field
Tolerancia XY
(Opcional)

La distancia que determina el rango en el cual las entidades o sus vértices se consideran iguales. De forma predeterminada, esta es la tolerancia x,y del valor del parámetro Entidades de la zona de entrada.

Precaución:

El cambio del valor de este parámetro puede generar un fallo o resultados inesperados. Se recomienda no modificar este parámetro. Se ha eliminado de la vista en el cuadro de diálogo de la herramienta. Se utiliza de forma predeterminada la propiedad tolerancia x,y de referencia espacial de la clase de entidad de entrada.

Linear Unit
Unidades de salida
(Opcional)

Especifica las unidades que se utilizarán para calcular las mediciones de área o longitud. No se admite la configuración de unidades de salida cuando las entidades de clase de entrada son puntos.

  • DesconocidoLas unidades serán desconocidas.
  • KilómetrosLas unidades serán kilómetros.
  • MetrosLas unidades serán metros.
  • DecímetrosLas unidades serán decímetros.
  • CentímetrosLas unidades serán centímetros.
  • MilímetrosLas unidades serán milímetros.
  • Millas terrestresLas unidades serán millas terrestres.
  • Millas náuticas internacionalesLas unidades serán millas náuticas internacionales.
  • Yardas internacionalesLas unidades serán yardas internacionales.
  • Pies internacionalesLas unidades serán pies internacionales.
  • Pulgadas internacionalesLas unidades serán pulgadas internacionales.
  • Millas de agrimensura de EE. UU.Las unidades serán millas de agrimensura de EE. UU.
  • Millas náuticas topográficas de EE. UU.Las unidades serán millas náuticas topográficas de EE. UU.
  • Yardas de agrimensura de EE. UU.Las unidades serán yardas de agrimensura de EE. UU.
  • Pies de agrimensura de EE. UU.Las unidades serán pies de agrimensura de EE. UU.
  • PulgadasLas unidades serán pulgadas de agrimensura de EE. UU.
  • Grados decimalesLas unidades serán grados decimales.
  • PuntosLas unidades serán puntos.
  • ÁreasLas unidades serán áreas.
  • Kilómetros cuadradosLas unidades serán kilómetros cuadrados.
  • Metros cuadradosLas unidades serán metros cuadrados.
  • Decímetros CuadradosLas unidades serán decímetros cuadrados.
  • Centímetros CuadradosLas unidades serán centímetros cuadrados.
  • Milímetros CuadradosLas unidades serán milímetros cuadrados.
  • Millas terrestres cuadradasLas unidades serán millas terrestres cuadradas.
  • Yardas cuadradas internacionalesLas unidades serán yardas cuadradas internacionales.
  • Pies cuadrados internacionalesLas unidades serán pies cuadrados internacionales.
  • Pulgadas cuadradas internacionalesLas unidades serán pulgadas cuadradas internacionales.
  • Millas cuadradas de agrimensura de EE. UU.Las unidades serán millas cuadradas de agrimensura de EE. UU.
  • Yardas cuadradas de agrimensura de EE. UU.Las unidades serán yardas cuadradas de agrimensura de EE. UU.
  • Pies cuadrados de agrimensura de EE. UU.Las unidades serán pies cuadrados de agrimensura de EE. UU.
  • Pulgadas cuadradas de agrimensura de EE. UU.Las unidades serán pulgadas cuadradas de agrimensura de EE. UU.
  • Acres topográficos de EE. UU.Las unidades serán acres topográficos de EE. UU.
  • HectáreasLas unidades serán hectáreas.
  • AcresLas unidades serán acres internacionales.
String

arcpy.analysis.TabulateIntersection(in_zone_features, zone_fields, in_class_features, out_table, {class_fields}, {sum_fields}, {xy_tolerance}, {out_units})
NombreExplicaciónTipo de datos
in_zone_features

Las entidades utilizadas para identificar zonas.

Feature Layer
zone_fields
[zone_fields,...]

El campo o los campos de atributo que se utilizará para definir zonas.

Field
in_class_features

Las entidades utilizadas para identificar clases.

Feature Layer
out_table

La tabla que contendrá la tabulación cruzada de intersecciones entre zonas y clases.

Table
class_fields
[class_fields,...]
(Opcional)

El campo o campos de atributo utilizados para definir las clases.

Field
sum_fields
[sum_fields,...]
(Opcional)

Los campos que se sumarán del parámetro in_class_features.

Field
xy_tolerance
(Opcional)

La distancia que determina el rango en el cual las entidades o sus vértices se consideran iguales. De forma predeterminada, esta es la tolerancia x,y del valor del parámetro in_zone_features.

Precaución:

El cambio del valor de este parámetro puede generar un fallo o resultados inesperados. Se recomienda no modificar este parámetro. Se ha eliminado de la vista en el cuadro de diálogo de la herramienta. Se utiliza de forma predeterminada la propiedad tolerancia x,y de referencia espacial de la clase de entidad de entrada.

Linear Unit
out_units
(Opcional)

Especifica las unidades que se utilizarán para calcular las mediciones de área o longitud. No se admite la configuración de unidades de salida cuando las entidades de clase de entrada son puntos.

  • UNKNOWNLas unidades serán desconocidas.
  • KILOMETERSLas unidades serán kilómetros.
  • METERSLas unidades serán metros.
  • DECIMETERSLas unidades serán decímetros.
  • CENTIMETERSLas unidades serán centímetros.
  • MILLIMETERSLas unidades serán milímetros.
  • MILES_INTERNATIONALLas unidades serán millas terrestres.
  • NAUTICAL_MILES_INTERNATIONALLas unidades serán millas náuticas internacionales.
  • YARDS_INTERNATIONALLas unidades serán yardas internacionales.
  • FEET_INTERNATIONALLas unidades serán pies internacionales.
  • INCHES_INTERNATIONALLas unidades serán pulgadas internacionales.
  • MILESLas unidades serán millas de agrimensura de EE. UU.
  • NAUTICAL_MILESLas unidades serán millas náuticas topográficas de EE. UU.
  • YARDSLas unidades serán yardas de agrimensura de EE. UU.
  • FEETLas unidades serán pies de agrimensura de EE. UU.
  • INCHESLas unidades serán pulgadas de agrimensura de EE. UU.
  • DECIMAL_DEGREESLas unidades serán grados decimales.
  • POINTSLas unidades serán puntos.
  • ARESLas unidades serán áreas.
  • SQUARE_KILOMETERSLas unidades serán kilómetros cuadrados.
  • SQUARE_METERSLas unidades serán metros cuadrados.
  • SQUARE_DECIMETERSLas unidades serán decímetros cuadrados.
  • SQUARE_CENTIMETERSLas unidades serán centímetros cuadrados.
  • SQUARE_MILLIMETERSLas unidades serán milímetros cuadrados.
  • SQUARE_MILESLas unidades serán millas terrestres cuadradas.
  • SQUARE_YARDSLas unidades serán yardas cuadradas internacionales.
  • SQUARE_FEETLas unidades serán pies cuadrados internacionales.
  • SQUARE_INCHESLas unidades serán pulgadas cuadradas internacionales.
  • SQUARE_MILES_USLas unidades serán millas cuadradas de agrimensura de EE. UU.
  • SQUARE_YARDS_USLas unidades serán yardas cuadradas de agrimensura de EE. UU.
  • SQUARE_FEET_USLas unidades serán pies cuadrados de agrimensura de EE. UU.
  • SQUARE_INCHES_USLas unidades serán pulgadas cuadradas de agrimensura de EE. UU.
  • ACRES_USLas unidades serán acres topográficos de EE. UU.
  • HECTARESLas unidades serán hectáreas.
  • ACRESLas unidades serán acres internacionales.
String

Muestra de código

Ejemplo 1 de TabulateIntersection (ventana de Python)

Utilizar la función TabulateIntersection en la ventana de Python para buscar el área de todos los tipos de vegetación de cada zona.

import arcpy
arcpy.analysis.TabulateIntersection("Zones", "zone_id", "Vegetation", 
                                    r"C:\Esri\veganalysis.gdb\vegtypeAreas", 
                                    "VEGTYPE")
Ejemplo 2 de TabulateIntersection (secuencia de comandos independiente)

Este script abarca la función TabulateIntersection para crear una sencilla herramienta de script TabulateArea. La herramienta de secuencia de comandos TabulateArea solamente tomará entidades de polígono como entrada.

Los campos Zona y Clase están restringidos a uno cada uno.


'''
TabulateArea.py
Description: Shows how to wrap the TabulateIntersection tool to create a TabulateArea script tool
Requirements: Polygon Zone Feature Class, Polygon Class Feature Class

'''
import arcpy
import sys
import os

def AddMsgAndPrint(msg, severity=0):
    # Adds a Message (in case this is run as a tool)
    # and also prints the message to the screen (standard output)
    print(msg)

    # Split the message on \n first, so that if it's multiple lines, 
    # a GPMessage will be added for each line
    try:
        for string in msg.split('\n'):
            # Add appropriate geoprocessing message 
            if severity == 0:
                arcpy.AddMessage(string)
            elif severity == 1:
                arcpy.AddWarning(string)
            elif severity == 2:
                arcpy.AddError(string)
    except:
        pass

## Get Parameters
zoneFC = arcpy.GetParameterAsText(0)
zoneFld = arcpy.GetParameterAsText(1) # Only allow one field
classFC = arcpy.GetParameterAsText(2)
outTab = arcpy.GetParameterAsText(3)
classFld = arcpy.GetParameterAsText(4) # Optional and only allow one field
sum_Fields = ""
xy_tol = ""
outUnits = arcpy.GetParameterAsText(5)

## Validate parameters
# Inputs can only be polygons
zoneDesc = arcpy.Describe(zoneFC)
classDesc = arcpy.Describe(classFC)
if zoneDesc.shapeType != "Polygon" or classDesc.shapeType != "Polygon":
    AddMsgAndPrint("Inputs must be of type polygon.", 2)
    sys.exit()
    
# Only one zone field and class field
if zoneFld != "":
    if zoneFld.find(";") > -1 or classFld.find(";") > -1:
        AddMsgAndPrint("A maximum of one zone and/or class field is allowed.", 2)
        sys.exit()

# Run TabulateIntersection
try:
    arcpy.analysis.TabulateIntersection(zoneFC, zoneFld, classFC, outTab, 
                                        classFld, sum_Fields, xy_tol, outUnits)
except:
    arcpy.AddMessage("Tabulate Intersection Failed.")

AddMsgAndPrint(arcpy.GetMessages(), 0)

Información de licenciamiento

  • Basic: No
  • Standard: No
  • Advanced: Sí

Temas relacionados