Einzugsgebiete generieren (Network Analyst)
Zusammenfassung
Erstellt einen Netzwerkanalyse-Layer für ein Einzugsgebiet, legt die Analyse-Eigenschaften fest und berechnet die Analyse. Dieses Werkzeug eignet sich ideal zum Einrichten eines Geoverarbeitungs-Service für Einzugsgebiete im Web. Bei einem Einzugsgebiet handelt es sich um einen Bereich, der alle Straßen umfasst, die innerhalb einer festgelegten Entfernung oder Fahrzeit von einer oder mehreren Einrichtungen aus erreicht werden können.
Einzugsgebiete werden üblicherweise zur Visualisierung und Messung der Erreichbarkeit verwendet. So lässt sich beispielsweise mithilfe eines Fahrzeitpolygons von drei Minuten um einen Lebensmittelladen feststellen, welche Anwohner den Laden innerhalb von drei Minuten erreichen können und daher wahrscheinlich dort einkaufen.
Die Werkzeuge Einzugsgebiete erstellen und Einzugsgebiets-Layer erstellen sind ähnlich, sie wurden jedoch für unterschiedliche Zwecke entwickelt. Verwenden Sie Einzugsgebiete erstellen, wenn Sie einen Geoverarbeitungs-Service einrichten. Dies vereinfacht den Einrichtungsprozess. Verwenden Sie andernfalls Einzugsgebiets-Layer erstellen. Verwenden Sie Einzugsgebiets-Layer erstellen ferner, wenn Sie Einzugsgebietslinien erstellen müssen; Einzugsgebiete erstellen bietet keine Option zum Erstellen von Linien.
Um einen Einzugsgebiet-Geoverarbeitungs-Service mit Einzugsgebiete erstellen zu erstellen, müssen Sie nur ein Werkzeug einrichten. Dann können Sie das Werkzeug direkt als Service veröffentlichen. Dagegen müssen Sie für die Erstellung eines Einzugsgebiet-Geoverarbeitungs-Service mit Einzugsgebiets-Layer erstellen ein Modell erstellen, dieses ordnungsgemäß mit verschiedenen anderen Werkzeugen verbinden und das Modell veröffentlichen.
Informationen zum Einrichten eines Fahrzeitpolygon-Service unter Verwendung von Lernprogrammdaten finden Sie unter Beispiel für Geoverarbeitungs-Services: Reisezeitpolygone.
Verwendung
Im Dialogfeld des Werkzeugs sind die verschiedenen optionalen Parameter in die folgenden sechs Kategorien gruppiert, um Ihnen die Verwaltung zu erleichtern:
- Erweiterte Analyse
- Barrieren
- Netzwerk-Dataset
- Netzwerkstandorte
- Polygonerstellung
- Service-Funktionen
Informationen über die Ausgabe des Werkzeugs "Einzugsgebiete generieren"
Syntax
Parameter | Erläuterung | Datentyp |
Facilities |
Die Einrichtungen, um die herum Einzugsgebiete generiert werden. Das Feature-Set für Einrichtungen verfügt über drei Attribute: ObjectID: Das vom System verwaltete ID-Feld. Shape: Das Geometriefeld, das die geographische Position des Netzwerkanalyse-Objekts angibt. Name: Der Name der Einrichtung. Wenn kein Name angegeben wird oder der Name Null ist, wird zum Zeitpunkt der Berechnung automatisch ein Name generiert. | Feature Set |
Break_Values |
Gibt die Größe und Anzahl von Einzugsgebiet-Polygonen an, die für die einzelnen Einrichtungen generiert werden sollen. Die Einheiten werden vom Wert für "Unterbrechungseinheiten" bestimmt. Wenn das Werkzeug Einzugsgebiete generieren ausgeführt wird, findet zwischen den folgenden Parametern eine erwähnenswerte Interaktion statt: Unterbrechungswerte, Unterbrechungseinheiten und entweder Zeitattribut oder Entfernungsattribut. Die Kombination aus Unterbrechungswerte und Unterbrechungseinheiten definiert die Entfernung bzw. die Zeit, über die sich das Einzugsgebiet um die Einrichtung(en) erstrecken soll. Mit den Parametern Zeitattribut und Entfernungsattribut wird jeweils ein Netzwerkkostenattribut definiert. Es wird jedoch nur eines dieser zwei Kostenattribute verwendet; im Solver wird das Attribut ausgewählt, das dem Wert von Unterbrechungseinheiten entspricht. Wenn Sie also einen zeitbasierten Wert für Unterbrechungseinheiten angeben, wie z. B. Sekunden oder Minuten, verwendet das Werkzeug zur Berechnung das im Parameter Zeitattribut definierte Kostenattribut. Wenn Sie einen entfernungsbasierten Wert für Unterbrechungseinheiten angeben, wie z. B. Kilometer oder Meilen, wird das im Parameter Entfernungsattribut definierte Kostenattribut verwendet. Es können mehrere Polygonunterbrechungen festgelegt werden, um konzentrische Einzugsgebiete für jede Einrichtung zu erstellen. Wenn Sie zum Beispiel 2-, 3- und 5-Meilen-Einzugsgebiete für die einzelnen Einrichtungen ermitteln möchten, geben Sie "2 3 5" ein, wobei Sie die Werte mit einem Leerzeichen trennen. Legen Sie Unterbrechungseinheiten auf "Meilen" fest, und stellen Sie sicher, dass Sie für den Parameter Entfernungsattribut ein entfernungsbasiertes Netzwerkattribut ausgewählt haben. | String |
Break_Units |
Die Einheiten für den Parameter "Unterbrechungswerte".
Ob im Werkzeug Einzugsgebiete generieren das im Parameter "Zeitattribut" oder im Parameter "Entfernungsattribut" angegebene Netzwerkkostenattribut verwendet wird, hängt davon ab, ob die hier angegebenen Einheiten zeit- oder entfernungsbasiert sind. Wenn der Wert für "Unterbrechungseinheiten" von den Einheiten des entsprechenden zeit- oder entfernungsbasierten Kostenattributs abweicht, wird die erforderliche Einheitenkonvertierung vom Werkzeug durchgeführt. | String |
Network_Dataset |
Das Netzwerk-Dataset, für das die Einzugsgebietanalyse ausgeführt wird. Das Netzwerk-Dataset muss mindestens über ein zeitbasiertes und ein entfernungsbasiertes Kostenattribut verfügen. | Network Dataset Layer |
Service_Areas |
Der Ausgabe-Workspace und Name der Ausgabe-Features. Dieser Workspace muss bereits vorhanden sein. Der standardmäßige Ausgabe-Workspace ist "In-Memory". | Feature Class |
Travel_Direction (optional) |
Legen Sie fest, ob die zum Generieren der Einzugsgebiet-Polygone verwendete Reiserichtung zu der Einrichtung hin oder von der Einrichtung weg führt.
Durch die Reiserichtung kann sich die Form der Polygone ändern, da die Impedanzen auf gegenüberliegenden Seiten einer Straße unterschiedlich sein oder Einbahnstraßen vorliegen können. Die auszuwählende Richtung hängt von der Art der Einzugsgebiet-Analyse ab. Das Einzugsgebiet für einen Pizza-Lieferservice sollte beispielsweise von der Einrichtung weg erstellt werden, das Einzugsgebiet eines Krankenhauses hingegen zur Einrichtung hin, da die kritische Fahrzeit eines Patienten die Fahrt zum Krankenhaus ist. | String |
Time_of_Day (optional) |
Die Abfahrtszeit von oder die Ankunftszeit bei den Einrichtungen. Die Interpretation dieses Wertes hängt davon ab, ob die Fahrt zu der Einrichtung hin oder von der Einrichtung weg führt.
Das Netzwerk-Dataset muss Verkehrsdaten enthalten, damit dieser Parameter wirksam wird. Durch wiederholtes Berechnen der gleichen Analyse mit unterschiedlichen Tageszeiten können Sie ermitteln, wie sich die Erreichbarkeit einer Einrichtung über die Zeit verändert. Beispiel: Das Einzugsgebiet von 5 Minuten um eine Feuerwache ist in den frühen Morgenstunden relativ groß, wird während der morgendlichen Hauptverkehrszeit kleiner, nimmt dann am späteren Vormittag wieder zu usw. | Date |
UTurn_Policy (optional) |
Die Wendenregel an Knoten. Das Zulassen von Wenden bedeutet, dass der Solver an einem Knoten wenden und auf der gleichen Straße wieder zurückfahren kann. Bei Knoten kann es sich um Straßenkreuzungen und Sackgassen handeln. Das heißt, manche Fahrzeuge können wenden, manche nicht. Aus diesem Grund gibt der Parameter "Wendenregel" implizit an, wie viele Kanten mit dem Knoten verbunden sind. Dies wird als Knotenvalenz bezeichnet. Die zulässigen Werte für diesen Parameter sind unten aufgelistet, gefolgt von einer Beschreibung ihrer Bedeutung hinsichtlich der Knotenvalenz.
Tipp: Wenn Sie eine genauer definierte Wendenregel benötigen, fügen Sie einen Evaluator für die globale Verzögerung bei Kantenübergängen zu einem Netzwerkkostenattribut hinzu, oder passen Sie dessen Einstellungen an. Gehen Sie bei der Konfiguration von U-förmigen Kantenübergängen besonders sorgfältig vor. Prüfen Sie ferner die Einstellung der CurbApproach-Eigenschaft Ihrer Netzwerkstandorte. | String |
Point_Barriers (optional) | Gibt Punkt-Barrieren an, die in zwei Typen aufgeteilt sind: Einschränkungsbarrieren und Punkt-Barrieren für Zusatzkosten. Sie schränken vorübergehend das Passieren ein, oder fügen Impedanz zu Punkten im Netzwerk hinzu. Die Punkt-Barrieren werden durch ein Feature-Set definiert. Die Attributwerte, die Sie für die Punkt-Features angeben, bestimmen, ob es sich um Einschränkungsbarrieren oder Barrieren für Zusatzkosten handelt. Die Felder in der Attributtabelle sind unten aufgelistet und beschrieben. ObjectID: Das vom System verwaltete ID-Feld. Shape: Das Geometriefeld, das die geographische Position des Netzwerkanalyse-Objekts angibt. Name: Der Name der Barriere. BarrierType: Gibt an, ob die Barriere die Fahrt völlig beschränkt oder Kosten für das Passieren der Barriere hinzufügt. Es gibt zwei Optionen:
Verwenden Sie den Wert 0 für "Einschränkung" und den Wert 2 für "Zusatzkosten" AdditionalCost: "AdditionalCost" gibt an, wie viel Impedanz hinzugefügt wird, wenn ein Einzugsgebiet die Barriere passiert. Die Einheit für diese Feldwert entspricht der für Unterbrechungseinheiten angegebenen Einheit. | Feature Set |
Line_Barriers (optional) |
Gibt Linien-Barrieren an, die das Passieren vorübergehend einschränken. Die Linien-Barrieren werden durch ein Feature-Set definiert. Die Felder in der Attributtabelle sind unten aufgelistet und beschrieben. ObjectID: Das vom System verwaltete ID-Feld. Shape: Das Geometriefeld, das die geographische Position des Netzwerkanalyse-Objekts angibt. Name: Der Name der Barriere. | Feature Set |
Polygon_Barriers (optional) | Gibt Polygon-Barrieren an, die in zwei Typen aufgeteilt sind: Einschränkungsbarrieren und Kostenfaktor-Polygon-Barrieren. Sie schränken vorübergehend das Passieren ein, oder skalieren die Impedanz der entsprechenden Teile des Netzwerks. Die Polygon-Barrieren werden durch ein Feature-Set definiert. Die Attributwerte, die Sie für die Polygon-Features angeben, bestimmen, ob es sich um Einschränkungsbarrieren oder Kostenfaktor-Barrieren handelt. Die Felder in der Attributtabelle sind unten aufgelistet und beschrieben. ObjectID: Das vom System verwaltete ID-Feld. Shape: Das Geometriefeld, das die geographische Position des Netzwerkanalyse-Objekts angibt. Name: Der Name der Barriere. BarrierType: Gibt an, ob die Barriere Reise völlig beschränkt oder die Kosten für das Passieren der Barriere skaliert. Es gibt zwei Optionen:
Verwenden Sie den Wert 0 für "Einschränkung" und den Wert 1 für "Kostenfaktor" ScaledCostFactor: "ScaledCostFactor" gibt an, mit welchem Faktor die Impedanz multipliziert wird, wenn ein Einzugsgebiet die Barriere passiert. | Feature Set |
Time_Attribute (optional) |
Definiert das Netzwerkkostenattribut, das bei einem zeitbasierten Wert für "Unterbrechungseinheit" verwendet werden soll. Wenn der Wert für Unterbrechungseinheiten von den Einheiten des hier definierten Kostenattributs abweicht, wird die erforderliche Zeiteinheitkonvertierung vom Werkzeug durchgeführt. Anders ausgedrückt, die Zeiteinheiten der Unterbrechungen und des Netzwerkkostenattributs müssen nicht identisch sein. | String |
Time_Attribute_Units (optional) |
Die Einheiten des vom Parameter Zeitattribut angegebenen Netzwerkkostenattributs. Dieser Parameter dient lediglich zur Information und kann nicht geändert werden, ohne das Netzwerk-Dataset direkt zu ändern. Eine Änderung ist zudem nicht erforderlich, da die Einheitenkonvertierungen zwischen den Einheiten von Unterbrechungswert und Kostenattribut automatisch durchgeführt werden. | String |
Distance_Attribute (optional) | Definiert das Netzwerkkostenattribut, das bei einem entfernungsbasierten Wert für Unterbrechungseinheiten verwendet werden soll. Wenn der Wert für Unterbrechungseinheiten von den Einheiten des hier definierten Kostenattributs abweicht, wird die erforderliche Entfernungseinheitkonvertierung vom Werkzeug durchgeführt. Anders ausgedrückt, die Entfernungseinheiten der Unterbrechungen und des Netzwerkkostenattributs müssen nicht identisch sein. | String |
Distance_Attribute_Units (optional) |
Die Einheiten des vom Parameter Entfernungsattribut angegebenen Netzwerkkostenattributs. Dieser Parameter dient lediglich zur Information und kann nicht geändert werden, ohne das Netzwerk-Dataset direkt zu ändern. Eine Änderung ist zudem nicht erforderlich, da die Einheitenkonvertierungen zwischen den Einheiten von Unterbrechungswert und Kostenattribut automatisch durchgeführt werden. | String |
Use_Hierarchy_in_Analysis (optional) |
The parameter is not used if a hierarchy attribute is not defined on the network dataset used to perform the analysis. In such cases, use "#" as the parameter value. | Boolean |
Restrictions (optional) |
Gibt an, welche Netzwerk-Restriktionsattribute bei der Berechnung beachtet werden. | String |
Attribute_Parameter_Values (optional) |
Gibt die Parameterwerte für Netzwerkattribute mit Parametern an. Das Record Set weist zwei Spalten auf, die gemeinsam eindeutig Parameter identifizieren, und eine weitere Spalte, die den Parameterwert angibt. Das Attributparameterwerte-Record Set weist verknüpfte Attribute auf. Die Felder in der Attributtabelle sind unten aufgelistet und beschrieben. ObjectID: Das vom System verwaltete ID-Feld. AttributeName: Der Name des Netzwerkattributs, dessen Attributparameter von der Tabellenzeile festgelegt wird. ParameterName: Der Name des Attributparameters, dessen Wert von der Tabellenzeile festgelegt wird. (Objekttypparameter könne mit diesem Werkzeug nicht aktualisiert werden.) ParameterValue: Der Wert, der für den Attributparameter festgelegt werden soll. Wenn kein Wert angegeben ist, wird der Attributparameter auf Null festgelegt. | Record Set |
Maximum_Snap_Tolerance (optional) |
Die maximale Fangtoleranz ist die weiteste Entfernung, in der Network Analyst bei der Positionierung oder Neupositionierung eines Punktes im Netzwerk sucht. Es wird nach geeigneten Kanten oder Knoten gesucht. Der Punkt wird an der nächsten Kante oder am nächsten Knoten gefangen. Wenn keine geeignete Position innerhalb der maximalen Fangtoleranz gefunden wird, wird das Objekt als verortet markiert. | Linear unit |
Exclude_Restricted_Portions_of_the_Network (optional) |
| Boolean |
Feature_Locator_WHERE_Clause (optional) |
Ein SQL-Ausdruck zur Auswahl einer Teilmenge von Quell-Features, wodurch die Netzwerkelemente eingeschränkt werden, auf denen Einrichtungen platziert werden können. Die Syntax für diesen Parameter besteht aus zwei Teilen: Der erste Teil ist der Name der Quell-Feature-Class (gefolgt von einem Leerzeichen), der zweite Teil der SQL-Ausdruck. Um einen SQL-Ausdruck für zwei oder mehr Quell-Feature-Classes zu schreiben, verwenden Sie ein Semikolon als Trennzeichen. Beispiel: Wenn Sie sicherstellen möchten, dass Einrichtungen nicht auf eingeschränkt befahrbaren Straßen platziert werden, schreiben Sie einen SQL-Ausdruck wie den folgenden, um diese Quell-Features auszuschließen: "Streets" "FUNC_CLASS not in('1', '2')". Beachten Sie, dass Barrieren die WHERE-Klausel des Feature-Locators beim Laden ignorieren. | String |
Polygons_for_Multiple_Facilities (optional) |
Wählen Sie aus, wie Einzugsgebiet-Polygone generiert werden, wenn die Analyse mehrere Einrichtungen umfasst.
| String |
Polygon_Overlap_Type (optional) |
Gibt an, ob konzentrische Einzugsgebiet-Polygone als Scheiben oder als Ringe erstellt werden sollen. Diese Option ist nur anwendbar, wenn mehrere Unterbrechungswerte für die Einrichtungen angegeben werden.
| String |
Detailed_Polygons (optional) | Gibt die Option zum Erstellen detaillierter oder generalisierter Polygone an.
| Boolean |
Polygon_Trim_Distance (optional) |
Gibt die Entfernung an, innerhalb der die Einzugsgebietspolygone gekürzt werden. Dies ist hilfreich, wenn nur wenige Daten vorhanden sind und das Einzugsgebiet keine größeren Flächen abdecken soll, die keine Features aufweisen. Kein Wert oder der Wert 0 für diesen Parameter gibt an, dass die Einzugsgebiet-Polygone nicht gekürzt werden sollen. Bei Verwendung von Hierarchie wird der Parameterwert ignoriert. | Linear unit |
Polygon_Simplification_Tolerance (optional) |
Geben Sie an, in welchem Maß die Polygongeometrie vereinfacht werden soll. Bei einer Vereinfachung werden kritische Punkte eine Polygons beibehalten, um seine wesentliche Form zu definieren; die übrigen Punkte werden entfernt. Die von Ihnen angegebene Vereinfachungsentfernung ist der maximal zulässige Versatz vom ursprünglichen Polygon, um den das vereinfachte Polygon abweichen darf. Durch Vereinfachung eines Polygons wird die Anzahl der Stützpunkte und meist auch die Darstellungszeit verringert. | Linear unit |
Maximum_Facilities (optional) |
Schränkt die Anzahl der Einrichtungen ein, die der Einzugsgebiet-Analyse hinzugefügt werden können. Mithilfe dieses Parameters können Sie den bei der Berechnung stattfindenden Verarbeitungsaufwand steuern. Beispielsweise könnten Sie diesem Parameter einen niedrigen Wert für eine kostenlose Version des Service und einen höheren Wert für eine gebührenpflichtige Version des Service zuweisen. Ein Null-Wert gibt an, dass kein Grenzwert vorhanden ist. | Long |
Maximum_Number_of_Breaks (optional) |
Schränkt die Anzahl der Unterbrechungen ein, die der Einzugsgebiet-Analyse hinzugefügt werden können. Mithilfe dieses Parameters können Sie den bei der Berechnung stattfindenden Verarbeitungsaufwand steuern. Beispielsweise könnten Sie diesem Parameter einen niedrigen Wert für eine kostenlose Version des Service und einen höheren Wert für eine gebührenpflichtige Version des Service zuweisen. Ein Null-Wert gibt an, dass kein Grenzwert vorhanden ist. | Long |
Maximum_Features_Affected_by_Point_Barriers (optional) | Begrenzt die Anzahl der Features, die von Punkt-Barrieren beeinflusst werden. Mithilfe dieses Parameters können Sie den bei der Berechnung stattfindenden Verarbeitungsaufwand steuern. Beispielsweise könnten Sie diesem Parameter einen niedrigen Wert für eine kostenlose Version des Service und einen höheren Wert für eine gebührenpflichtige Version des Service zuweisen. Ein Null-Wert gibt an, dass kein Grenzwert vorhanden ist. | Long |
Maximum_Features_Affected_by_Line_Barriers (optional) |
Begrenzt die Anzahl der Features, die von Linien-Barrieren beeinflusst werden. Mithilfe dieses Parameters können Sie den bei der Berechnung stattfindenden Verarbeitungsaufwand steuern. Beispielsweise könnten Sie diesem Parameter einen niedrigen Wert für eine kostenlose Version des Service und einen höheren Wert für eine gebührenpflichtige Version des Service zuweisen. Ein Null-Wert gibt an, dass kein Grenzwert vorhanden ist. | Long |
Maximum_Features_Affected_by_Polygon_Barriers (optional) |
Begrenzt die Anzahl der Features, die von Polygon-Barrieren beeinflusst werden. Mithilfe dieses Parameters können Sie den bei der Berechnung stattfindenden Verarbeitungsaufwand steuern. Beispielsweise könnten Sie diesem Parameter einen niedrigen Wert für eine kostenlose Version des Service und einen höheren Wert für eine gebührenpflichtige Version des Service zuweisen. Ein Null-Wert gibt an, dass kein Grenzwert vorhanden ist. | Long |
Maximum_Break_Time_Value (optional) |
Beschränkt den maximalen Wert des Parameters Unterbrechungswert beim Berechnen von zeitbasierten Einzugsgebieten. Mithilfe dieses Parameters können Sie den bei der Berechnung stattfindenden Verarbeitungsaufwand steuern. Beispielsweise könnten Sie diesem Parameter einen niedrigen Wert für eine kostenlose Version des Service und einen höheren Wert für eine gebührenpflichtige Version des Service zuweisen. Ein Null-Wert gibt an, dass kein Grenzwert vorhanden ist. | Double |
Maximum_Break_Distance_Value (optional) | Beschränkt den maximalen Wert des Parameters Unterbrechungswert beim Berechnen von entfernungsbasierten Einzugsgebieten. Mithilfe dieses Parameters können Sie den bei der Berechnung stattfindenden Verarbeitungsaufwand steuern. Beispielsweise könnten Sie diesem Parameter einen niedrigen Wert für eine kostenlose Version des Service und einen höheren Wert für eine gebührenpflichtige Version des Service zuweisen. Ein Null-Wert gibt an, dass kein Grenzwert vorhanden ist. | Double |
Force_Hierarchy_beyond_Break_Time_Value (optional) |
Gibt den Unterbrechungswert an, nach dem der Solver beim Berechnen zeitbasierter Einzugsgebiete Hierarchie auch dann erzwingt, wenn Hierarchie nicht aktiviert wurde. Die Berechnung von Einzugsgebieten für hohe Unterbrechungswerte bei Verwendung der Netzwerkhierarchie ist in der Regel weniger verarbeitungsintensiv als die Berechnung der gleichen Einzugsgebiete ohne Verwendung der Hierarchie. Mithilfe dieses Parameters können Sie den bei der Berechnung stattfindenden Verarbeitungsaufwand steuern. Ein Null-Wert gibt an, dass die Hierarchie nie erzwungen und der Wert des Parameters Hierarchie bei Analyse verwenden immer berücksichtigt wird. Wenn das Eingabe-Netzwerk-Dataset keine Hierarchie unterstützt, führt die Angabe eines Wertes für diesen Parameter zu einem Fehler. In diesem Fall muss ein Null-Wert verwendet werden. | Double |
Force_Hierarchy_beyond_Break_Distance_Value (optional) |
Gibt den Unterbrechungswert an, nach dem der Solver beim Berechnen entfernungsbasierter Einzugsgebiete Hierarchie auch dann erzwingt, wenn Hierarchie nicht aktiviert wurde. Die Berechnung von Einzugsgebieten für hohe Unterbrechungswerte bei Verwendung der Netzwerkhierarchie ist in der Regel weniger verarbeitungsintensiv als die Berechnung der gleichen Einzugsgebiete ohne Verwendung der Hierarchie. Mithilfe dieses Parameters können Sie den bei der Berechnung stattfindenden Verarbeitungsaufwand steuern. Ein Null-Wert gibt an, dass die Hierarchie nie erzwungen und der Wert des Parameters Hierarchie bei Analyse verwenden immer berücksichtigt wird. Wenn das Eingabe-Netzwerk-Dataset keine Hierarchie unterstützt, führt die Angabe eines Wertes für diesen Parameter zu einem Fehler. In diesem Fall muss ein Null-Wert verwendet werden. | Double |
Codebeispiel
Führen Sie das Werkzeug mit den erforderlichen Parametern aus dem Python-Fenster aus.
import arcpy
facilities = arcpy.FeatureSet()
facilities.load("FireStations")
arcpy.na.GenerateServiceAreas(facilities, "1 2 3", "Minutes", "Streets_ND",
"in_memory\\FireStationServiceAreas")
Das folgende eigenständige Python-Skript veranschaulicht, wie GenerateServiceAreas verwendet werden kann, um die Erreichbarkeit eines Ladens im zeitlichen Verlauf zu ermitteln. Es zeigt die Generierung eines 5-Minuten-Einzugsgebiets um einen Ladenstandort zu verschiedenen Tageszeiten. Solche Analysen können hilfreich sein – z. B. für einen Pizza-Lieferservice – zum festzustellen, wie sich das Gebiet, das innerhalb von 5 Minuten vom Laden aus erreicht werden kann, in Abhängigkeit von der aktuellen Verkehrslage ändert.
# Name: GenerateServiceAreas_Workflow.py
# Description: Generate a 5 minute service area around a store location at
# different times in a day. Such analysis can be useful, for example
# for a pizza store, to see how the area that can be reached within
# 5 minutes from the store changes based on the current traffic
# conditions.
# Requirements: Network Analyst Extension
#Import system modules
import arcpy
from arcpy import env
import datetime
try:
#Check out the Network Analyst extension license
arcpy.CheckOutExtension("Network")
#Set environment settings
env.workspace = "C:/data/SanFrancisco.gdb"
env.overwriteOutput = True
#Set local variables
inNetworkDataset = "Transportation/Streets_ND"
impedanceAttribute = "TravelTime"
breakValues = "5"
breakUnits = "Minutes"
inFacilities = "Analysis/ExistingStore"
outGeodatabase = "C:/data/output/ServiceAreaOutput.gdb"
serviceArea = "in_memory\\ServiceAreas"
dateFieldName = "StartTime"
nameField = "Name"
#use today at 8 AM as the start time and then increment it by one hour
startTime = datetime.datetime(1899,12,30,8,0,0)
#Create a new feature set with same schema as Facilities parameter in
#Generate Service Areas tool. Load the feature from the ExistingStore
#feature class in the feature set
facilities = arcpy.GetParameterValue("GenerateServiceAreas_na",0)
facilities.load(inFacilities)
#Create an empty feature class with same spatial reference as the
#network dataset and a Date field called StartTime and a text field called Name
outServiceAreas = arcpy.management.CreateFeatureclass(outGeodatabase, "ServiceAreas",
"POLYGON","","","",
inNetworkDataset).getOutput(0)
arcpy.management.AddField(outServiceAreas, dateFieldName, "DATE")
arcpy.management.AddField(outServiceAreas, nameField, "TEXT")
#Open an insert cursor on the feature class to add new polygons
cursor = arcpy.da.InsertCursor(outServiceAreas, ("SHAPE@", nameField,
dateFieldName))
#Geneate a 5 minute service area around the store at every one hour interval
#from 8 AM to 8 PM. Copy the output service area to a new feature class
for i in range(1,14):
timeFormat = startTime.time().strftime("%I %p")
print "Generating {0} {1} service area at {2}".format(breakValues,breakUnits,
timeFormat)
arcpy.na.GenerateServiceAreas(facilities,breakValues,breakUnits,
inNetworkDataset, serviceArea, "TRAVEL_FROM",
startTime, Time_Attribute=impedanceAttribute)
#Get the shape from the output service area so that it can be inserted
#in the feature class
with arcpy.da.SearchCursor(serviceArea,("SHAPE@", nameField)) as inputRows:
row = inputRows.next()
cursor.insertRow((row[0],row[1],startTime))
startTime = startTime + datetime.timedelta(seconds=3600)
del cursor
print "Script completed successfully"
except Exception as e:
# If an error occurred, print line number and error message
import traceback, sys
tb = sys.exc_info()[2]
print "An error occured on line %i" % tb.tb_lineno
print str(e)