Beschriftung | Erläuterung | Datentyp |
Eingabepunkte | Die Point-Feature-Class mit aktivierten Zeiteigenschaften, die für die Verfolgung von Ereignissen in der Nähe verwendet wird. | Feature Layer |
Entitäts-ID-Feld |
Das Textfeld, in dem die eindeutige ID der einzelnen Entitäten angegeben wird. | Field |
Ausgabe für Ereignisse in der Nähe | Die Ausgabe-Feature-Class, die die Verfolgung von Ereignissen in der Nähe enthält. | Feature Class |
Entfernungsmethode | Gibt den Entfernungstyp an, der für den Parameter Räumliche Suchentfernung verwendet wird.
| String |
Räumliche Suchentfernung (optional) | Die maximale Entfernung zwischen zwei Punkten, die als in der Nähe betrachtet werden sollen. Features innerhalb der räumlichen und der zeitlichen Suchentfernung gelten als nahe beieinander. | Linear Unit |
Zeitliche Suchentfernung (optional) | Die maximale Dauer zwischen zwei Punkten, die als in der Nähe betrachtet werden sollen. Features innerhalb der zeitlichen Suchentfernung, die die Kriterien für die räumliche Suchentfernung erfüllen, gelten als nahe beieinander. | Time Unit |
Relevante Entitäten definieren mit (optional) | Gibt die relevanten Entitäten an.
| String |
IDs relevanter Entitäten |
Die Entitätsnamen und Startzeiten für die relevanten Entitäten. Dieser Parameter wird nur unterstützt, wenn IDs relevanter Entitäten für den Parameter Relevante Entitäten definieren mit angegeben wird.
| Value Table |
Layer relevanter Entitäten | Der Layer oder die Tabelle mit den relevanten Entitäten. Dieser Parameter wird nur unterstützt, wenn Ausgewählte Features in einem angegebenen Layer relevanter Entitäten für den Parameter Relevante Entitäten definieren mit angegeben wird. | Table View |
Ausgabe-Tracks (optional) |
Ein Ausgabe-Layer, der das erste verfolgte Ereignis und alle nachfolgenden Features für die angegebene Entität enthält. | Feature Class |
Maximale Verfolgungstiefe |
Der maximale Grad der Trennung zwischen einer relevanten Entität und einer Entität, die sich weiter unten (flussabwärts) in der Verfolgung befindet. | Long |
Kriterien für Attributabgleich (optional) |
Die Felder, mit denen das Ereignis in der Nähe eingeschränkt wird. | Field |
Zusammenfassung
Verfolgt Ereignisse, die räumlich (Position) und zeitlich nahe beieinander liegen. Die Punktdaten mit aktivierten Zeiteigenschaften müssen Features einbeziehen, die einen Zeitpunkt darstellen.
Abbildung
Verwendung
Die folgenden Anwendungsbeispiele zeigen, wie das Werkzeug Ereignisse in der Nähe verfolgen verwendet wird:
- Eine Organisation überwacht vom Unternehmen ausgegebene Geräte, die von den Mitarbeitern mitgeführt werden. Das Unternehmen möchte feststellen, welche Mitarbeiter sich in der Nähe einer Person befanden, von der bekannt ist, dass sie sich mit dem Coronavirus (COVID-19) infiziert hat. Mithilfe des Punkt-Layers, der die Gerätepositionen und Zeitangaben repräsentiert, kann es alle Geräte identifizieren, die sich mindestens fünf Minuten lang in einem Umkreis von sechs Metern von der ansteckenden Person und anderen möglicherweise ansteckenden Mitarbeitern befunden haben.
- Eine NGO überwacht Lachsbestände per GPS und möchte die Ausbreitung von Lachsläusen bei entkommenen Zuchtlachsen und wild lebenden Populationen verfolgen. Einige mit GPS-Koordinaten gekennzeichnete Zuchtlachse werden verfolgt, um festzustellen, ob sie in unmittelbare Nähe von gekennzeichneten Wildpopulationen kommen, und wie diese Wildpopulationen die Krankheit möglicherweise weiterverbreiten. Diese Messungen beinhalten ebenfalls ein Feld für die Tiefe, mit dessen Hilfe die NGO Fische ermittelt, die in einer ähnlichen Tiefe vorkommen.
In Zusammenhang mit dem Werkzeug Ereignisse in der Nähe verfolgen wird folgende Terminologie verwendet:
- Entität: Ein Objekt, dessen Position regelmäßig erfasst wird, zum Beispiel ein Tier, eine Person oder ein Fahrzeug. Eine Entität kann stationär oder beweglich sein.
- Relevante Entitäten: Die jeweiligen Entitäten, für die eine Verfolgung durchgeführt wird, zum Beispiel eine Person, die mit COVID-19 infiziert ist.
- Ereignis in der Nähe: Der Zeitraum, in dem sich zwei Entitäten nahe beieinander befinden. Zum Beispiel zwei Personen, die innerhalb eines Zeitfensters von 1 Minute höchstens 3 Meter voneinander entfernt sind.
- Tiefe: Der Grad der Trennung zwischen einer relevanten Entität und einer Entität, die sich weiter unten in der Verfolgung befindet (flussabwärts). Bei einem Ereignis in der Nähe zwischen der relevanten Entität und einer anderen Person zum Beispiel, beträgt die Tiefe 1.
- Verfolgtes Ereignis: Der erste Kontakt einer angegebenen Entität unterhalb (flussabwärts) der relevanten Entitäten.
Bei der Verfolgung von Ereignissen in der Nähe sind Sie dafür verantwortlich, dass organisationsbezogene, örtliche und nationale Richtlinien bezüglich der Datensensitivität und des Datenschutzes berücksichtigt werden.
Die folgenden Diagramme zeigen, wie die Daten mit dem Werkzeug Ereignisse in der Nähe verfolgen verarbeitet werden. In diesen Diagrammen wird die Zeit auf der X-Achse dargestellt.
Jedes Diagramm enthält vier Entitäten: A, B, C und D. Im hervorgehobenen Text werden die verfolgten Ereignisse, die zwischen zwei Entitäten (der Von- und Zu-Entität) auftreten, sowie die Tiefe des Ereignisses in der Nähe beschrieben. In diesem Beispiel ist Entität C die relevante Entität, die flussabwärts verfolgt wird.
In Diagramm 1 ist Entität C die ausgewählte relevante Entität. Die Tiefe ist 0.
In Diagramm 2 tritt ein Ereignis in der Nähe zwischen den Entitäten C und B auf. Die Tiefe der Verfolgung ist 1. Wenn mehrere Features aufeinanderfolgende Ereignisse in der Nähe darstellen, handelt es sich um ein anhaltendes Ereignis in der Nähe.
In Diagramm 3 tritt ein Ereignis in der Nähe zwischen den Entitäten B und A auf. Die Tiefe der Verfolgung ist 2.
In Diagramm 4 tritt ein Ereignis in der Nähe zwischen den Entitäten C und D auf. Die Tiefe der Verfolgung ist 1.
In der folgenden Abbildung ist Entität B die relevante Entität, die dreimal in die Nähe von Entität A kommt, was durch die blauen Kreise gekennzeichnet ist. Unter der Annahme, dass die Zeit auf der X-Achse dargestellt wird, handelt es sich bei dem ersten nahegelegenen Ereignis um 1, gefolgt von einer Pause ohne Kontakt; anschließend erfolgen die nahegelegenen Ereignissen 2 und 3. Das Werkzeug gibt Ereignis 1 als das verfolgte Ereignis zurück. Die nahegelegenen Ereignisse 2 und 3 werden im Parameter-Layer Ausgabe für Ereignisse in der Nähe nicht zurückgegeben. Sämtliche Features nach dem nahegelegenen Ereignis 1 werden mit dem Parameter Ausgabe-Tracks zurückgegeben.
Features müssen die beiden Parameter-Kriterien Räumliche Suchentfernung und Zeitliche Suchentfernung erfüllen, damit sie als nahe beieinander gelten.
Abbildung A: Die beiden Features befinden sich innerhalb einer räumlichen Suchentfernung voneinander. Abbildung B: Die beiden Features befinden sich innerhalb einer zeitlichen Entfernung (zeitliche Suchentfernung) voneinander. Bei Angabe einer größeren zeitlichen und räumlichen Suchentfernung werden mehr Ereignisse gefunden, und die Verarbeitung der Ergebnisse dauert länger. Geringere Entfernungen haben weniger Ereignisse und eine kürzere Verarbeitungszeit zur Folge.
Nutzen Sie Ihre domänenspezifischen Kenntnisse, um die Werte für die Parameter Räumliche Suchentfernung und Zeitliche Suchentfernung zu bestimmen. Berücksichtigen Sie bei der Festlegung der Entfernungen Faktoren wie die Genauigkeit des Geräts.
Der Parameter Relevante Entitäten definieren mit unterstützt die folgenden Optionen:
- IDs relevanter Entitäten: Mit dieser Option wird der Parameter IDs relevanter Entitäten aktiviert, für den Entitäts-ID-Werte und optional auch Beginnend bei-Zeitwerte für den Start der Verfolgung angegeben werden müssen.
- Ausgewählte Features in einem angegebenen Layer relevanter Entitäten: Mit dieser Option wird der Parameter Layer relevanter Entitäten aktiviert, der Ihnen die Möglichkeit bietet, einen Layer auszuwählen, der Entitäts-IDs und optional auch Zeiten für den Start der Verfolgung auszuwählen. Bei diesem Layer muss der Name des Entitäts-ID-Feldes mit dem Namen des Entitäts-ID-Feldes aus dem Eingabe-Layer übereinstimmen. Wenn für den Layer Zeiteigenschaften aktiviert wurden, wird die Zeit für diesen berücksichtigt.
Die entfernungsbasierte Verfolgung beginnt bei der relevanten Entität. Wenn Sie eine Startzeit angeben, beginnt die Verfolgung für die betreffende Entität zu dieser Uhrzeit. Wenn Sie keine Uhrzeit angeben, beginnt die Verfolgung für die betreffende Entität am 1. Januar 1970.
Sie können für ein Ereignis in der Nähe zusätzliche Anforderungen festlegen. Beispielsweise können Sie ausschließlich Personen in einem bestimmten Gebäude auf einem Campus verfolgen, oder Sie können die Verfolgung nur auf eine Ebene eines Gebäudes beschränken. Verwenden Sie den Parameter Kriterien für Attributabgleich, um einschränkende Attribute anzugeben. Um zum Beispiel die Entitäten auf ein Stockwerk zu beschränken, geben Sie das Feld Floor an.
Der Layer Ausgabe für Ereignisse in der Nähe enthält das erste nahegelegene Ereignis für die verfolgten Entitäten sowie die folgenden Felder:
- from_id: Die ID der flussaufwärts liegenden Entität.
- to_id: Die ID der flussabwärts liegenden Entität.
- depth: Der Grad der Trennung zwischen der relevanten Entität und dem Feld to_id.
- duration_minutes: Die Dauer des verfolgten Ereignisses in Minuten. Für dieses Feld wird die Differenz zwischen der Start- und Endzeit berechnet. 1,5 Minuten sind zum Beispiel 90 Sekunden. Ein Wert von 0 bedeutet, dass es ein einziges Ereignis in der Nähe gibt (dieselbe Start- und Endzeit).
- date: Datum und Uhrzeit des Ereignisses in der Nähe. Dieses Feld wird als die erste erfasste Zeit berechnet, die die Kriterien des Ereignisses in der Nähe erfüllt.
Der Layer Ausgabe für Ereignisse in der Nähe kann mithilfe des Zeitschiebereglers visualisiert oder in einem Beziehungsdiagramm zur Visualisierung der Verfolgungsergebnisse dargestellt werden.
Sie können den optionalen Parameter Ausgabe-Tracks verwenden, um einen Layer zu erstellen, der das erste verfolgte Ereignis und alle nachfolgenden Features für die betreffende Entität enthält. Diese Ergebnisse sind hilfreich, um zu visualisieren, wohin Entitäten sich bewegt haben, und sie können mit dem Werkzeug Tracks rekonstruieren verwendet werden. Der Parameter Ausgabe-Tracks beinhaltet die folgenden Felder:
- entity_id: Die Entitäts-ID.
- depth: Der Grad der Trennung zwischen der relevanten Entität und dem Verfolgungs-Track. Die Tiefe wird bei einem einzelnen Track beibehalten.
- instant_datetime: Das Datum der einzelnen Features. Dieses Datum stimmt mit dem Datensatz aus den Eingabe-Features überein.
Eingabe-Punkte, die nicht über Zeitwerte, Geometriewerte oder ein Entitäts-ID-Feld verfügen, sind nicht in den Ergebnissen enthalten.
Wenn Sie die entfernungsbasierte Verfolgung nutzen, um die Übertragung (z. B. einer Krankheit) zu finden, achten Sie auf folgende Punkte:
- Das Vorhandensein eines verfolgten Ereignisses garantiert nicht, dass eine Übertragung stattgefunden hat. Es handelt sich nur um eine potenzielle Begegnung.
- Das Fehlen eines verfolgten Ereignisses bedeutet nicht, dass keine Übertragung stattgefunden hat. In Fällen wie z. B. einer Krankheit können andere Übertragungsmöglichkeiten nicht ausgeschlossen werden.
- Verwenden Sie möglichst den Parameter Kriterien für Attributabgleich, um nahegelegene Ereignisse bei Bedarf einzuschränken. Verwenden Sie beispielsweise Attribute, um den Raum, die Etage oder die Höhe einzuschränken.
Wenn Sie sämtliche Ereignisse in der Nähe berechnen möchten und nicht an einer Verfolgung flussabwärts von einer relevanten Entität interessiert sind, verwenden Sie das Werkzeug Features verbinden.
Wenn Sie einen oder mehrere der folgenden Schritte durchführen, können Sie die Performance des Werkzeugs Ereignisse in der Nähe verfolgen verbessern:
- Verwenden Sie für die Parameter Räumliche Suchentfernung und Zeitliche Suchentfernung kleinere Werte.
- Schränken Sie die relevanten Entitäten mit dem Parameter Kriterien für Attributabgleich ein.
- Geben Sie einen Wert für den Parameter Maximale Verfolgungstiefe an, um die Anzahl der Verfolgungen flussabwärts für eine bestimmte Entität und die relevante Entität zu begrenzen.
- Legen Sie die Ausdehnungsumgebung so fest, dass nur die gewünschten Daten analysiert werden.
- Verwenden Sie lokale Daten an der Stelle, an der die Analyse ausgeführt wird.
Dieses Geoverarbeitungswerkzeug wird unterstützt durch Spark. Bei Analysen auf Ihrem Desktop-Computer werden mehrere Kerne parallel verwendet. Weitere Informationen über die Ausführung der Analyse finden Sie unter Überlegungen zu GeoAnalytics Desktop-Werkzeugen.
Bei der Ausführung von GeoAnalytics Desktop-Werkzeugen wird die Analyse auf Ihrem Desktop-Computer durchgeführt. Für eine optimale Performance sollten die Daten auf Ihrem Desktop verfügbar sein. Wenn Sie einen gehosteten Feature-Layer verwenden, wird empfohlen, ArcGIS GeoAnalytics Server zu verwenden. Wenn Ihre Daten nicht lokal verfügbar sind, dauert die Ausführung eines Werkzeugs bedeutend länger. Informationen zur Verwendung von ArcGIS GeoAnalytics Server für Analysen finden Sie unter GeoAnalytics Tools.
Parameter
arcpy.geoanalytics.TraceProximityEvents(in_points, entity_id_field, out_feature_class, distance_method, {spatial_search_distance}, {temporal_search_distance}, {entities_of_interest_input_type}, entities_interest_ids, entities_interest_layer, {out_tracks_layer}, max_trace_depth, {attribute_match_criteria})
Name | Erläuterung | Datentyp |
in_points | Die Point-Feature-Class mit aktivierten Zeiteigenschaften, die für die Verfolgung von Ereignissen in der Nähe verwendet wird. | Feature Layer |
entity_id_field |
Das Textfeld, in dem die eindeutige ID der einzelnen Entitäten angegeben wird. | Field |
out_feature_class | Die Ausgabe-Feature-Class, die die Verfolgung von Ereignissen in der Nähe enthält. | Feature Class |
distance_method | Gibt den Entfernungstyp an, der für den Parameter Räumliche Suchentfernung verwendet wird.
| String |
spatial_search_distance (optional) | Die maximale Entfernung zwischen zwei Punkten, die als in der Nähe betrachtet werden sollen. Features innerhalb der räumlichen und der zeitlichen Suchentfernung gelten als nahe beieinander. | Linear Unit |
temporal_search_distance (optional) | Die maximale Dauer zwischen zwei Punkten, die als in der Nähe betrachtet werden sollen. Features innerhalb der zeitlichen Suchentfernung, die die Kriterien für die räumliche Suchentfernung erfüllen, gelten als nahe beieinander. | Time Unit |
entities_of_interest_input_type (optional) |
Gibt die relevanten Entitäten an.
| String |
entities_interest_ids [entities_interest_ids,...] | Die Entitätsnamen und Startzeiten für die relevanten Entitäten. Dieser Parameter wird nur unterstützt, wenn ID_START_TIME für den Parameter entities_of_interest_input_type angegeben wird.
| Value Table |
entities_interest_layer | Der Layer oder die Tabelle mit den relevanten Entitäten. Dieser Parameter wird nur unterstützt, wenn SELECTED_FEATURE für den Parameter entities_of_interest_input_type angegeben wird. | Table View |
out_tracks_layer (optional) |
Ein Ausgabe-Layer, der das erste verfolgte Ereignis und alle nachfolgenden Features für die angegebene Entität enthält. | Feature Class |
max_trace_depth |
Der maximale Grad der Trennung zwischen einer relevanten Entität und einer Entität, die sich weiter unten (flussabwärts) in der Verfolgung befindet. | Long |
attribute_match_criteria [attribute_match_criteria,...] (optional) |
Die Felder, mit denen das Ereignis in der Nähe eingeschränkt wird. | Field |
Codebeispiel
Das folgende eigenständige Skript veranschaulicht, wie die Funktion TraceProximityEvents verwendet wird.
# Name: TraceProximityEvents.py
# Description: Trace proximity events for user1 and user4 with 30 feet
# spatial search distance and 10 minute temporal search distance.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = r"C:/data/TraceData.gdb"
# Use time-enabled multifile feature connection dataset
inFeatures = r"C:/data/Example.mfc/example_tracks"
entityIDField = "user_id"
outFile = "ProximityEvents"
spatialDistance = "30 Feet"
temporalDistance = "10 Minutes"
entitiesOfInterest = [['user1', '3/30/2020 9:00:00 AM'], ['user4', '3/30/2020 9:00:00 AM']]
outTracks = "out_tracks"
max_trace_depth = 3
# Run Trace Proximity Events
arcpy.gapro.TraceProximityEvents(inFeatures, entityIDField, outFile, "PLANAR",
spatialDistance, temporalDistance,
"ID_START_TIME", entitiesOfInterest, None,
outTracks, max_trace_depth)