Verweilorte suchen (GeoAnalytics Desktop)

Zusammenfassung

Findet anhand von bestimmten Zeit- oder Entfernungsschwellenwerten Stopp- oder Verweilorte von sich bewegenden Objekten.

Abbildung

Abbildung des Werkzeugs "Verweilorte suchen"

Verwendung

  • Der Eingabe-Layer muss Punkt-Features mit aktivierten Zeiteigenschaften enthalten, die einen Zeitpunkt darstellen.

  • Verweilorte werden als aufeinanderfolgende Beobachtungen über einen bestimmten Zeitraum definiert, bei denen es wenig oder keine Bewegung gibt. Abhängig von der Anwendung kann eine Bezeichnung als Aufenthaltspunkte oder Stillstandserkennung möglich sein.

  • In der folgenden Tabelle wird die Terminologie aufgeführt, die im Werkzeug Verweilorte suchen verwendet wird:

    BegriffBeschreibung

    Verweilort

    Features, die angeben, wenn ein Track unter Berücksichtigung von bestimmten Zeit- und Entfernungsparametern stationär ist. Dies ist das Ausgabeergebnis des Werkzeugs, das Verweil-Features als Punkt, konvexe Hülle oder Mittelwert für einen Mittelpunkt darstellt.

    Track

    Eine Sequenz aus Features mit aktivierten Zeiteigenschaften vom Typ "Zeitpunkt". Ob sich Features in der Sequenz befinden, wird durch ein Track-Kennungsfeld bestimmt. Die Features werden nach Zeit geordnet. Nehmen wir als Beispiel eine Stadt mit einer Flotte aus Schneepflügen, die alle 10 Minuten ihre Position aufzeichnen. Die unterschiedlichen Tracks können jeweils durch die Fahrzeug-ID identifiziert werden.

    Beobachtung

    Ein Punkt in einem Track.

    Geodätisch

    Eine Linie, die auf einer Kugel dargestellt wird. Eine geodätische Linie, die auf dem Globus dargestellt wird, stellt die Krümmung des Geoids der Erde dar.

    Planar

    Eine geradlinige, wie auf einer flachen Oberfläche gemessene Entfernung (d. h. eine kartesische Ebene). Dies wird auch als euklidische Entfernung bezeichnet.

    Zeitpunkt

    Ein einzelner Zeitpunkt, der durch eine Startzeit, aber keine Endzeit dargestellt wird.

    Intervall

    Ein Zeitraum, der durch eine Startzeit und eine Endzeit dargestellt wird.

  • Die Ergebnisse sind Punkt-Features, die Zeitpunkte darstellen, oder Flächen-Features, die ein Zeitintervall darstellen. Der Beginn und das Ende des Intervalls sind vom ersten und letzten Feature eines Verweilortes abhängig.

  • Features ohne Zeitangabe werden aus der Analyse ausgeschlossen.

  • Verweilorte können nur in Tracks mit mehr als einem Feature erkannt werden.

  • Verweilorte werden anhand von Zeit- (Parameter Zeittoleranz) und Entfernungswerten (Parameter Entfernungstoleranz) bestimmt. Zunächst weist das Werkzeug einem Track mithilfe einer eindeutigen Kennung Features zu. Die Track-Reihenfolge wird anhand der Zeit der Features bestimmt. Anschließend wird die Entfernung zwischen der ersten Beobachtung in einem Track und der nächsten Beobachtung berechnet. Die Features werden als Teil des Verweilortes betrachtet, wenn zwei zeitlich aufeinanderfolgende Punkte für mindestens die angegebene Dauer innerhalb der angegebenen Entfernung verbleiben. Wenn zwei Features als Teil eines Verweilortes erkannt werden, wird das erste Feature am Verweilort als Bezugspunkt verwendet. Das Werkzeug sucht dann nach darauffolgenden Features, die sich innerhalb der angegebenen Entfernung vom Bezugspunkt des Verweilortes befinden. Nachdem alle Features innerhalb der angegebenen Entfernung gefunden wurden, erfasst das Werkzeug die Verweil-Features und berechnet den zugehörigen Mittelpunkt. Features vor und nach dem aktuellen Verweilort werden diesem hinzugefügt, wenn sie sich innerhalb der angegebenen Entfernung vom Mittelpunkt des Verweilortes befinden. Dieser Vorgang wird bis zum Ende des Tracks fortgesetzt.

  • Sie können ein oder mehrere Felder zum Identifizieren von Tracks angeben. Tracks werden durch die eindeutige Kombination aus mindestens einem Track-Feld dargestellt.

  • Standardmäßig werden Verweilorte mithilfe einer geodätischen Methode für die Entfernungsberechnung erstellt. Es empfiehlt sich, die geodätische Entfernung in den folgenden Fällen einzusetzen:

    • Tracks, die die internationale Datumslinie überqueren: Bei Verwendung der geodätischen Methode überqueren die Tracks der Eingabe-Layer, die die internationale Datumslinie überqueren, die Datumslinie korrekt. Dies ist die Standardeinstellung. Der Eingabe-Layer oder Raumbezug für die Bearbeitung muss auf einen Raumbezug festgelegt sein, der den Umbruch der internationalen Datumsgrenze unterstützt, z. B. eine globale Projektion wie "Weltweite flächentreue Zylinderprojektion".
    • Das Dataset befindet sich nicht in einer lokalen Projektion: Verwenden Sie die Entfernungsmethode "Planar", wenn sich die Eingabedaten in einer lokalen Projektion befinden, beispielsweise, um Verweilorte in einem US-Bundesstaat zu untersuchen. Für den Eingabe-Layer oder den Raumbezug für die Verarbeitung muss ein für das Dataset lokaler Raumbezug festgelegt werden.

  • Ausgabe-Verweilorte können auf vier verschiedene Arten dargestellt werden. Die folgende Tabelle enthält ein Beispiel für jede davon:

    Option des Parameters "Ausgabetyp"BeschreibungBeispiel

    Alle Features

    Alle Features werden zurückgegeben. Die resultierenden Features verfügen über den Zeittyp "Zeitpunkt".

    Features, die zu einem Verweilort gehören, werden blau dargestellt. Features, die nicht zu einem Verweilort gehören, werden grau dargestellt.

    Für diesen Ausgabetyp wird nur eine Zählstatistik berechnet. Die Anzahl stellt die Anzahl an Features dar, die zu einem einzelnen Verweilort gehören. Features, die nicht zu einem Verweilort gehören, werden nicht gezählt (Anzahl 0).

    Alle Features, die vom Werkzeug "Verweilorte suchen" zurückgegeben werden

    Verweil-Features

    Es werden nur Features zurückgegeben, die Teil eines Verweilortes sind. Die resultierenden Features verfügen über den Zeittyp "Zeitpunkt".

    Für diesen Ausgabetyp wird nur eine Zählstatistik berechnet. Die Anzahl stellt die Anzahl an Features dar, die zu einem einzelnen Verweilort gehören.

    Verweil-Features, die vom Werkzeug "Verweilorte suchen" zurückgegeben werden

    Mittelwerte für Mittelpunkte

    Jeder Verweilort verfügt über einen Punkt, der den Mittelpunkt des Verweilortes bezüglich Entfernung und Zeit darstellt. Die resultierenden Features verfügen über den Zeittyp "Intervall".

    Die Anzahl von Features am Verweilort wird immer berechnet. Sie können optional Statistiken für diesen Verweil-Feature-Typ berechnen. Standardmäßig werden keine Statistiken berechnet.

    Mittelpunkt-Features, die vom Werkzeug "Verweilorte suchen" zurückgegeben werden

    Konvexe Hüllen

    Jeder Verweilort wird durch eine konvexe Hülle der Verweil-Features dargestellt. Die resultierenden Features verfügen über den Zeittyp "Intervall".

    Die Anzahl von Features am Verweilort wird immer berechnet. Sie können optional Statistiken für diesen Verweil-Feature-Typ berechnen. Standardmäßig werden keine Statistiken berechnet.

    Features für konvexe Hüllen, die vom Werkzeug "Verweilorte suchen" zurückgegeben werden

  • Zusätzlich zu den Feldern aus dem Eingabe-Layer sind die folgenden Felder in allen Ausgabe-Features enthalten:

    FeldnameBeschreibung

    count

    Die Anzahl von Features am Verweilort

    dwellid

    Eine eindeutige ID für den Verweilort, zu dem das Feature gehört

    meanx

    Der Mittelwert der X-Koordinaten, die den Verweilort definieren

    meany

    Der Mittelwert der Y-Koordinaten, die den Verweilort definieren

    meandistance

    Die durchschnittliche Entfernung zwischen aufeinanderfolgenden Punkten an einem Verweilort

    dwellduration

    Die Dauer in Millisekunden zwischen der ersten und der letzten Beobachtung an einem Verweilort

    date

    Der Zeitwert des einzelnen Features, wenn der Ausgabetyp "Verweil-Features", "Mittelwerte für Mittelpunkte" oder "Alle Features" lautet

    start_date

    Die erstellte Startzeit, wenn der Ausgabetyp "Konvexe Hüllen" lautet

    end_date

    Die erstellte Endzeit, wenn der Ausgabetyp "Konvexe Hüllen" lautet

    Beim Ausgabetyp Alle Features werden für die Ergebnisse, die zu einem Verweilort gehören, die oben beschriebenen Felder berechnet. Die Ergebnisse, die keinem Verweilort angehören, weisen den Wert 0 für das Feld count auf, das Feld date gibt den Zeitwert des Eingabe-Features zurück, und für alle anderen Felder lautet der zurückgegebene Wert NULL.

  • Teilen Sie Tracks mit dem Parameter Aufteilung nach Zeitgrenze. Dadurch werden Tracks in einem festgelegten Intervall segmentiert. Wenn Sie den Parameter Zeitgrenze: Referenz beispielsweise auf 1 Tag festlegen, beginnend am 1. Januar 1990 um 9:00 Uhr, werden alle Tracks jeden Tag um 9:00 Uhr abgeschnitten. Durch diese Teilung wird die Rechenzeit beschleunigt, da für die Analyse kleinere Tracks erstellt werden. Wenn die Unterteilung nach einer regelmäßig auftretenden Zeitgrenze für die Analyse sinnvoll ist, empfiehlt sie sich für die Big-Data-Verarbeitung.

  • Wenn ein Verweilort bei der Berechnung der konvexen Hülle vollständig stationär ist (ein einziger Ort) oder aus zwei eindeutigen Punkten besteht, wird ein kleiner Wert basierend auf der Toleranz des Raumbezugs in einer Analyse als Breite, Höhe oder Durchmesser verwendet, um Ausgabe-Polygone anstelle von konvexen Hüllen zu erstellen. Diese Polygone dienen der Visualisierung und stellen nicht die räumliche Ausdehnung des Verweilortes dar. In der folgenden Tabelle werden Beispiele dieser Fälle beschrieben:

    EingabefallBeschreibungBeispiel

    Lagegleich (ein räumlich eindeutig verorteter Punkt)

    Wenn die Eingabe-Features gestapelt (lagegleich) sind, stellt die resultierende konvexe Hülle ein ungültiges Polygon dar.

    In diesem Beispiel werden die lagegleichen Eingabe-Features durch den roten Punkt im Mittelpunkt des gelben Polygons angegeben. Das gelbe Polygon stellt das Ergebnis der konvexen Ausgabehülle für lagegleiche Punkte dar. Das blaue Polygon stellt dar, wie eine richtige konvexe Hülle aussieht, wenn sich vier nicht lagegleiche Punkte an einem einzigen Verweilort befinden.

    Lagegleiche Features, die bei der Ausgabe konvexer Hüllen zurückgegeben werden

    Parallel verlaufend (zwei räumlich eindeutig verortete Punkte)

    Wenn sich die Eingabe-Features in einer Linie befinden (bei zwei räumlich eindeutig verorteten Punkten meist der Fall), stellt die resultierende konvexe Hülle ein ungültiges Polygon dar.

    In diesem Beispiel werden parallel verlaufende Punkte durch rote Punkte innerhalb des gelben Polygons dargestellt. Das gelbe Polygon stellt das Ergebnis der konvexen Ausgabehülle für parallel verlaufende Punkte dar.

    Parallel verlaufende Features, die bei der Ausgabe konvexer Hüllen zurückgegeben werden

  • Berücksichtigen Sie bei der Auswahl der Parameter zum Berechnen der Verweilorte den Beobachtungstyp und den Maßstab des gesuchten Verweilortes. Im Folgenden finden Sie Beispiele dafür, wie sich die Parameter zum Suchen von Verweilorten in Bewegungsdaten ändern lassen:

    • Schiff-Features verfügen über die Felder vesselID und tripID.
      • Verwenden Sie die Felder vesselID und tripID als Kennung, um Verweilorte entlang verschiedener Routen zu berechnen.
      • Geben Sie eine Zeittoleranz von einer Stunde und eine Entfernungstoleranz von einer Seemeile für die Erkennung von Schiffen an, die sich mindestens eine Stunde lang nicht mehr als eine Seemeile fortbewegen.
    • Bei der Nachverfolgung von Tierbewegungen gibt es das Feld animalID.
      • Verwenden Sie das Feld animalID als Kennung für den Vergleich der Verweilorte bestimmter Tiere.
      • Geben Sie eine Zeittoleranz von 3 Tagen und eine Entfernungstoleranz von 10 Meilen an, um bei der Ermittlung des Reviers eines Tieres interessante Tierlebensräume zu finden.
      • Verwenden Sie eine Zeittoleranz von 2 Stunden und eine Entfernungstoleranz von 100 Metern, wenn Sie einen kleineren Interessenbereich wünschen.

  • Wenn Sie einen oder mehrere der folgenden Schritte durchführen, können Sie die Performance des Werkzeugs Verweilorte suchen verbessern:

    • Legen Sie die Ausdehnungsumgebung so fest, dass nur die gewünschten Daten analysiert werden.
    • Legen Sie als Ausgabeergebnis die Werte Verweil-Features oder Mittelwerte für Mittelpunkte fest.
    • Unterteilen Sie die Tracks soweit wie möglich, indem Sie Track-Feld-Eingaben hinzufügen.
    • Verwenden Sie anstelle der Methode "Geodätisch" die Methode "Planar" für die Entfernungsberechnung.
    • Teilen Sie die Tracks mit dem Parameter Aufteilung nach Zeitgrenze.
    • 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

BeschriftungErläuterungDatentyp
Eingabe-Features

Die Punkt-Tracks, in denen Verweilorte gefunden werden. Die Eingabe muss ein Layer mit aktivierten Zeiteigenschaften sein und Features enthalten, die einen Zeitpunkt darstellen.

Feature Layer
Ausgabe-Dataset

Die Ausgabe-Feature-Class mit den resultierenden Verweilorten.

Feature Class
Track-Felder

Ein oder mehrere Felder, die zum Identifizieren eindeutiger Tracks verwendet werden.

Field
Entfernungsmethode

Gibt an, wie die Entfernungen zwischen Verweil-Features berechnet werden.

  • GeodätischWenn der Raumbezug geschwenkt werden kann, überqueren die Tracks bei Bedarf die internationale Datumsgrenze. Wenn der Raumbezug nicht geschwenkt werden kann, sind die Tracks auf die Ausdehnung des Koordinatensystems beschränkt und werden nicht umbrochen.
  • PlanarPlanare Entfernungen werden verwendet.
String
Entfernungstoleranz

Die maximale Entfernung zwischen Punkten, die als einem einzigen Verweilort zugehörig betrachtet werden sollen.

Linear Unit
Zeittoleranz

Die Mindestzeitdauer, die als einem einzigen Verweilort zugehörig betrachtet wird.

Beim Ermitteln von Verweilorten werden sowohl die Zeit als auch die Entfernung berücksichtigt. Die Entfernung wird im Parameter Entfernungstoleranz angegeben.

Time Unit
Ausgabetyp

Gibt an, wie die Verweil-Features ausgegeben werden.

  • Verweil-FeaturesEs werden alle Eingabe-Punkt-Features zurückgegeben, die Teil eines Verweilortes sind.
  • Mittelwerte für MittelpunkteEs werden Punkte zurückgegeben, die die Mittelwerte für Mittelpunkte der einzelnen Verweilgruppen darstellen. Dies ist die Standardeinstellung.
  • Konvexe HüllenEs werden Polygone zurückgegeben, die die konvexe Hülle der einzelnen Verweilgruppen darstellen.
  • Alle FeaturesEs werden alle Eingabe-Punkt-Features zurückgegeben.
String
Summenstatistik
(optional)

Die Statistiken, die für bestimmte Felder berechnet werden.

  • Anzahl: Die Anzahl der Nicht-NULL-Werte. Es kann für numerische Felder oder Zeichenfolgen verwendet werden. Die Anzahl von [null, 0, 2] ist 2.
  • Summe: Die Summe der numerischen Werte in einem Feld. Die Summe von [null, null, 3] ist 3.
  • Mittelwert: Der Mittelwert der numerischen Werte. Der Mittelwert von [0, 2, null] ist 1.
  • Min: Der Minimalwert eines numerischen Feldes. Das Minimum von [0, 2, null] ist 0.
  • Max: Der Maximalwert eines numerischen Feldes. Der Maximalwert von [0, 2, null] ist 2.
  • Standardabweichung: Die Standardabweichung eines numerischen Feldes. Die Standardabweichung von [1] ist null. Die Standardabweichung von [null, 1,1,1] ist null.
  • Varianz: Die Varianz eines numerischen Feldes in einer Spur. Die Varianz von [1] ist null. Die Varianz von [null, 1, 1, 1] ist null.
  • Bereich: Der Bereich eines numerischen Feldes. Dieser wird durch die Subtraktion der Minimalwerte vom Maximalwert berechnet. Der Bereich von [0, null, 1] ist 1. Der Bereich von [null, 4] ist 0.
  • Beliebig: Dies ist eine Beispielzeichenfolge aus einem Feld vom Typ "Zeichenfolge".
  • Erster: Der erste Wert eines angegebenen Feldes in einem Track.
  • Letzter: Der letzte Wert eines angegebenen Feldes in einem Track.

Value Table
Zeitgrenze: Unterteilung
(optional)

Zeitspanne zur Aufteilung der Eingabedaten für die Analyse. Bei Angabe einer Zeitgrenze können Sie Werte innerhalb einer bestimmten Zeitspanne analysieren. Wenn Sie als Zeitgrenze einen Tag und als Bezug für die Zeitgrenze den 1. Januar 1980 festlegen, werden die Tracks jeweils zu Beginn des Tages geteilt.

Time Unit
Zeitgrenze: Referenz
(optional)

Bezugszeit zur Aufteilung der Eingabedaten für die Analyse. Zeitgrenzen werden für die gesamte Zeitspanne erstellt, wobei der Bezugszeitpunkt nicht zwangsläufig am Beginn der Zeitspanne liegen muss. Ohne Angabe einer Bezugszeit wird der 1. Januar 1970 verwendet.

Date

arcpy.geoanalytics.FindDwellLocations(input_features, output, track_fields, distance_method, distance_tolerance, time_tolerance, output_type, {summary_statistics}, {time_boundary_split}, {time_boundary_reference})
NameErläuterungDatentyp
input_features

Die Punkt-Tracks, in denen Verweilorte gefunden werden. Die Eingabe muss ein Layer mit aktivierten Zeiteigenschaften sein und Features enthalten, die einen Zeitpunkt darstellen.

Feature Layer
output

Die Ausgabe-Feature-Class mit den resultierenden Verweilorten.

Feature Class
track_fields
[track_fields,...]

Ein oder mehrere Felder, die zum Identifizieren eindeutiger Tracks verwendet werden.

Field
distance_method

Gibt an, wie die Entfernungen zwischen Verweil-Features berechnet werden.

  • GEODESICWenn der Raumbezug geschwenkt werden kann, überqueren die Tracks bei Bedarf die internationale Datumsgrenze. Wenn der Raumbezug nicht geschwenkt werden kann, sind die Tracks auf die Ausdehnung des Koordinatensystems beschränkt und werden nicht umbrochen.
  • PLANARPlanare Entfernungen werden verwendet.
String
distance_tolerance

Die maximale Entfernung zwischen Punkten, die als einem einzigen Verweilort zugehörig betrachtet werden sollen.

Linear Unit
time_tolerance

Die Mindestzeitdauer, die als einem einzigen Verweilort zugehörig betrachtet wird.

Beim Ermitteln von Verweilorten werden sowohl die Zeit als auch die Entfernung berücksichtigt. Die Entfernung wird im Parameter Entfernungstoleranz angegeben.

Time Unit
output_type

Gibt an, wie die Verweil-Features ausgegeben werden.

  • DWELL_FEATURESEs werden alle Eingabe-Punkt-Features zurückgegeben, die Teil eines Verweilortes sind.
  • DWELL_MEAN_CENTERSEs werden Punkte zurückgegeben, die die Mittelwerte für Mittelpunkte der einzelnen Verweilgruppen darstellen. Dies ist die Standardeinstellung.
  • DWELL_CONVEX_HULLSEs werden Polygone zurückgegeben, die die konvexe Hülle der einzelnen Verweilgruppen darstellen.
  • ALL_FEATURESEs werden alle Eingabe-Punkt-Features zurückgegeben.
String
summary_statistics
[summary_statistics,...]
(optional)

Die Statistiken, die für bestimmte Felder berechnet werden.

  • COUNT: Die Anzahl der Nicht-NULL-Werte. Es kann für numerische Felder oder Zeichenfolgen verwendet werden. Die Anzahl von [null, 0, 2] ist 2.
  • SUM: Die Summe der numerischen Werte in einem Feld. Die Summe von [null, null, 3] ist 3.
  • MEAN: Der Mittelwert der numerischen Werte. Der Mittelwert von [0,2, null] ist 1.
  • MIN: Der Minimalwert eines numerischen Feldes. Das Minimum von [0, 2, null] ist 0.
  • MAX: Der Maximalwert eines numerischen Feldes. Der Maximalwert von [0, 2, null] ist 2.
  • STDDEV: Die Standardabweichung eines numerischen Feldes. Die Standardabweichung von [1] ist null. Die Standardabweichung von [null, 1,1,1] ist null.
  • VAR: Die Varianz eines numerischen Feldes in einem Track. Die Varianz von [1] ist null. Die Varianz von [null, 1,1,1] ist null.
  • RANGE: Der Bereich eines numerischen Feldes. Dieser wird durch die Subtraktion der Minimalwerte vom Maximalwert berechnet. Der Bereich von [0, null, 1] ist 1. Der Bereich von [null, 4] ist 0.
  • ANY: Dies ist eine Beispielzeichenfolge aus einem Feld vom Typ "Zeichenfolge".
  • FIRST: Der erste Wert eines angegebenen Feldes in einem Track.
  • LAST: Der letzte Wert eines angegebenen Feldes in einem Track.

Value Table
time_boundary_split
(optional)

Zeitspanne zur Aufteilung der Eingabedaten für die Analyse. Bei Angabe einer Zeitgrenze können Sie Werte innerhalb einer bestimmten Zeitspanne analysieren. Wenn Sie als Zeitgrenze einen Tag und als Bezug für die Zeitgrenze den 1. Januar 1980 festlegen, werden die Tracks jeweils zu Beginn des Tages geteilt.

Time Unit
time_boundary_reference
(optional)

Bezugszeit zur Aufteilung der Eingabedaten für die Analyse. Zeitgrenzen werden für die gesamte Zeitspanne erstellt, wobei der Bezugszeitpunkt nicht zwangsläufig am Beginn der Zeitspanne liegen muss. Ohne Angabe einer Bezugszeit wird der 1. Januar 1970 verwendet.

Date

Codebeispiel

FindDwellLocations: Beispiel (eigenständiges Skript)

Das folgende eigenständige Skript veranschaulicht, wie die Funktion FindDwellLocations verwendet wird.

# Name: FindDwellLocations.py
# Description: Find the mean centers representing locations where ships have 
#              stayed within 1 mile across 4 hours of travel.

# Requirements: ArcGIS GeoAnalytics Desktop tools

# Import system modules
import arcpy

# Enable time on the input features using an .lyrx file.
# To create the .lyrx file, add your layer to a map, open the layer properties 
# and enable time. Then right-click the layer and select Share As Layer File.
inputLyrx = r'C:\data\MyAtlanticShips.lyrx'

# MakeFeatureLayer converts the .lyrx to features
myAtlanticShipsInputLayer = arcpy.management.MakeFeatureLayer(inputLyrx, "MyAtlanticShips_layer")

# ApplySymbologyFromLayer sets the time using the .lyrx file definition
arcpy.management.ApplySymbologyFromLayer(myAtlanticShipsInputLayer, inputLyrx)

# Set local variables
outFeatures = "c:/mydata/OutputDatasets/AtlanticShips_DwellLocations.shp"
trackIdentifier = "SHIPID"
distance = "1 Miles"
timeDuration = "4 Hours"
outputType = "MEAN_CENTERS"
statistics = [["SPEED", "MEAN"]]

# Run Find Dwell Locations
arcpy.gapro.FindDwellLocations(myAtlanticShipsInputLayer, outFeatures, trackIdentifier, 
                               "GEODESIC", distance, timeDuration, 
                               outputType, statistics)