Layer der nächsten Einrichtung erstellen (Network Analyst)

Zusammenfassung

Erstellt einen Netzwerkanalyse-Layer der nächsten Einrichtung und legt seine Analyseeigenschaften fest. Ein Netzwerkanalyse-Layer für die nächstgelegenen Einrichtung ist hilfreich, um die nächste Einrichtung oder die Einrichtungen zu einem Ereignis auf der Grundlage der angegebenen Netzwerkkosten zu bestimmen.

Verwendung

Syntax

MakeClosestFacilityLayer_na (in_network_dataset, out_network_analysis_layer, impedance_attribute, {travel_from_to}, {default_cutoff}, {default_number_facilities_to_find}, {accumulate_attribute_name}, {UTurn_policy}, {restriction_attribute_name}, {hierarchy}, {hierarchy_settings}, {output_path_shape})
ParameterErläuterungDatentyp
in_network_dataset

Das Netzwerk-Dataset, für das die Analyse der nächstgelegenen Einrichtung ausgeführt wird.

Network Dataset Layer
out_network_analysis_layer

Name des zu erstellenden Netzwerkanalyse-Layers für die nächstgelegene Einrichtung.

String
impedance_attribute

Das Kostenattribut, das in der Analyse als Impedanz verwendet wird.

String
travel_from_to
(optional)

Gibt die Fahrtrichtung zwischen Einrichtungen und Ereignissen an.

  • TRAVEL_FROMDie Fahrtrichtung erfolgt von den Einrichtungen zu den Ereignissen.
  • TRAVEL_TODie Fahrtrichtung erfolgt von den Ereignissen zu den Einrichtungen.

Mithilfe dieser Option können in einem Netzwerk mit Beschränkungen für Einbahnstraßen und unterschiedlichen Impedanzen basierend auf der Fahrtrichtung verschiedene Einrichtungen gesucht werden. So kann eine Einrichtung zum Beispiel 10 Minuten Fahrzeit vom Ereignis entfernt sein, wenn die Fahrt vom Ereignis zur Einrichtung erfolgt, jedoch 15 Minuten Fahrzeit entfernt, wenn die Fahrt von der Einrichtung zum Ereignis erfolgt.

Feuerwehren verwenden im Allgemeinen die Einstellung "TRAVEL_FROM", da es hier darauf ankommt, wie lange es dauert, von der Feuerwache (Einrichtung) zum Einsatzort (Ereignis) zu fahren. Ein Einzelhandelsgeschäft (Einrichtung) ist eher daran interessiert, wie lange die Käufer (Ereignisse) brauchen, um den Laden zu erreichen. Daher verwenden Läden für gewöhnlich die Option "TRAVEL_TO".

String
default_cutoff
(optional)

Standardimpedanzwert, an dem die Suche nach Einrichtungen für ein gegebenes Ereignis beendet wird. Der Standard kann überschrieben werden, indem der Grenzwert für Ereignisse angegeben wird, wenn die TRAVEL_TO-Option verwendet wird oder indem der Grenzwert für Einrichtungen angegeben wird, wenn die TRAVEL_FROM-Option verwendet wird.

Double
default_number_facilities_to_find
(optional)

Standardanzahl der nächsten Einrichtungen, die pro Ereignis gesucht werden sollen. Der Standard kann überschrieben werden, indem ein Wert für die Eigenschaft "TargetFacilityCount" der Ereignisse angegeben wird.

Long
accumulate_attribute_name
[accumulate_attribute_name,...]
(optional)

Liste der Kostenattribute, die während der Analyse akkumuliert werden sollen. Diese Akkumulationsattribute dienen ausschließlich zu Referenzzwecken. Der Solver verwendet nur das mit dem Parameter "Impedanz-Attribut" angegebene Kostenattribut zum Berechnen der Route.

For each cost attribute that is accumulated, a Total_[Impedance] property is added to the routes that are output by the solver.

String
UTurn_policy
(optional)

Wenden an Knoten, die beim Durchlaufen des Netzwerks zwischen Stopps auftreten, sind zulässig oder nicht.

  • ALLOW_UTURNSWenden sind an Knoten mit einer beliebigen Anzahl angrenzender Kanten erlaubt.
  • NO_UTURNSU-turns are prohibited at all junctions. Note, however, that U-turns are still permitted at network locations even when this setting is chosen; however, you can set the individual network locations' CurbApproach property to prohibit U-turns.
  • ALLOW_DEAD_ENDS_ONLYWenden sind an allen Knoten verboten, außer es ist nur eine angrenzende Kante vorhanden (Sackgasse).
  • ALLOW_DEAD_ENDS_AND_INTERSECTIONS_ONLYWenden sind an Knoten, an denen genau zwei angrenzende Kanten aufeinander treffen, nicht erlaubt; an Kreuzungen (alle Knoten mit drei oder mehr angrenzenden Kanten) oder in Sackgassen (Knoten mit genau einer angrenzenden Kante) sind sie erlaubt.
String
restriction_attribute_name
[restriction_attribute_name,...]
(optional)

Liste von Restriktionsattributen, die während der Analyse angewendet werden.

String
hierarchy
(optional)
  • USE_HIERARCHY Verwenden Sie das Hierarchieattribut für die Analyse. Wenn eine Hierarchie verwendet wird, werden vom Solver Kanten einer höheren Rangstufe gegenüber Kanten niedrigerer Rangstufen bevorzugt. Hierarchische Berechnungen sind schneller und können verwendet werden, um die Präferenzen eines Fahrers auf der Straße zu simulieren, der – wenn möglich – lieber auf Autobahnen statt auf Landstraßen fährt, selbst wenn die Fahrstrecke dann länger ist. Diese Option kann nur angewendet werden, wenn das Eingabe-Netzwerk-Dataset ein Hierarchieattribut aufweist.
  • NO_HIERARCHYVerwenden Sie das Hierarchieattribut nicht für die Analyse. Wird keine Hierarchie verwendet, dann wird eine genaue Route für das Netzwerk-Dataset berechnet.

Der Parameter wird nicht verwenden, wenn für das Netzwerk-Dataset, das zum Ausführen der Analyse verwendet wird, kein Hierarchieattribut definiert wird. In solchen Fällen verwenden Sie "#" als Parameterwert.

Boolean
hierarchy_settings
(optional)

Ältere VersionenÄltere Versionen:

Vor Version 10 konnten mit diesem Parameter die Hierarchiebereiche für die Analyse von den im Netzwerk-Dataset festgelegten Standard-Hierarchiebereichen geändert werden. In Version 10 wird dieser Parameter nicht mehr unterstützt und muss als leere Zeichenfolge angegeben werden. Wenn Sie die Hierarchiebereiche für Ihre Analyse ändern möchten, aktualisieren Sie die Standard-Hierarchiebereiche im Netzwerk-Dataset.

Network Analyst Hierarchy Settings
output_path_shape
(optional)

Gibt den Shape-Typ für die Routen-Features an, die von der Analyse ausgegeben werden.

  • TRUE_LINES_WITH_MEASURESDie Ausgaberouten weisen die exakte Form der zugrunde liegenden Netzwerkquellen auf. Die Ausgabe umfasst zudem Routenmesswerte für die lineare Referenzierung. Die Messwerte nehmen ab dem ersten Halt zu und zeichnen die kumulierte Impedanz zum Erreichen einer definierten Position auf.
  • TRUE_LINES_WITHOUT_MEASURESDie Ausgaberouten weisen die exakte Form der zugrunde liegenden Netzwerkquellen auf.
  • STRAIGHT_LINESDas Ausgaberouten-Shape ist eine einzelne gerade Linie zwischen jedem einzelnen Ereignis-Einrichtungs-Paar.
  • NO_LINESFür die Ausgaberouten wird kein Shape erstellt.

Unabhängig vom ausgewählten Ausgabe-Shape-Typ wird die optimale Route immer anhand der Netzwerkimpedanz und nie anhand der Euklidischen Entfernung ermittelt. Dies bedeutet, dass sich nur die Routen-Shapes und nicht der zugrunde liegende Durchlauf des Netzwerks unterscheiden.

String

Codebeispiel

MakeClosestFacilityLayer – Beispiel 1 (Python-Fenster)

Ausführen des Werkzeugs, wenn nur die erforderlichen Parameter verwendet werden

import arcpy
arcpy.env.workspace = "C:/ArcTutor/Network Analyst/Tutorial/SanFrancisco.gdb"
arcpy.MakeClosestFacilityLayer_na("Transportation/Streets_ND",
                                  "ClosestFireStations","Minutes")
MakeClosestFacilityLayer – Beispiel 2 (Python-Fenster)

Ausführen des Werkzeugs unter Verwendung aller Parameter

import arcpy
arcpy.env.workspace = "C:/ArcTutor/Network Analyst/Tutorial/SanFrancisco.gdb"
arcpy.MakeClosestFacilityLayer_na("Transportation/Streets_ND",
                                  "ClosestHospitals","Minutes","TRAVEL_TO",5,3,
                                  ["Meters","Minutes"],"ALLOW_UTURNS",
                                  ["Oneway"],"USE_HIERARCHY","",
                                  "TRUE_LINES_WITH_MEASURES")
MakeClosestFacilityLayer – Beispiel 3 (Workflow)

Mit dem folgenden eigenständigen Python-Skript wird veranschaulicht, wie das Werkzeug "MakeClosestFacilityLayer" verwendet werden kann, um von den Ladenstandorten aus das nächst gelegene Lager zu ermitteln.

# Name: MakeClosestFacilityLayer_Workflow.py
# Description: Find the closest warehouse from the store locations and save the 
#              results to a layer file on disk.
# Requirements: Network Analyst Extension 

#Import system modules
import arcpy
from arcpy import env

try:
    #Check out the Network Analyst extension license
    arcpy.CheckOutExtension("Network")

    #Set environment settings
    env.workspace = "C:/data/Paris.gdb"
    env.overwriteOutput = True
    
    #Set local variables
    inNetworkDataset = "Transportation/ParisMultimodal_ND"
    outNALayer = "ClosestWarehouse"
    impedanceAttribute = "Drivetime"
    accumulateAttributeName = ["Meters"]
    inFacilities = "Analysis/Warehouses"
    inIncidents = "Analysis/Stores"
    fieldMappings = "Name NOM #"
    outLayerFile = "C:/data/output" + "/" + outNALayer + ".lyr"
    
    #Create a new closest facility analysis layer. Apart from finding the drive 
    #time to the closest warehouse, we also want to find the total distance. So
    #we will accumulate the "Meters" impedance attribute.
    arcpy.MakeClosestFacilityLayer_na(inNetworkDataset,outNALayer,
                                      impedanceAttribute,"TRAVEL_TO","",1,
                                      accumulateAttributeName,"NO_UTURNS")
    
    #Load the warehouses as Facilities using the default field mappings and 
    #search tolerance
    arcpy.AddLocations_na(outNALayer,"Facilities",inFacilities,"","")
    
    #Load the Stores as Incidents. Map the Name property from the NOM field
    arcpy.AddLocations_na(outNALayer,"Incidents",inIncidents,fieldMappings,"")
    
    #Solve the closest facility layer
    arcpy.Solve_na(outNALayer)
    
    #Save the solved closest facility layer as a layer file on disk with 
    #relative paths
    arcpy.SaveToLayerFile_management(outNALayer,outLayerFile,"RELATIVE")
    
    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)

Umgebungen

Verwandte Themen

Lizenzinformationen

ArcView: Ja
ArcEditor: Ja
ArcInfo: Ja

7/10/2012