1
0
Fork 0
arangodb/Documentation/DocuBlocks/JSF_aql_general_graph_absol...

3.5 KiB

GRAPH_ABSOLUTE_ECCENTRICITY (graphName, vertexExample, options)

The GRAPH_ABSOLUTE_ECCENTRICITY function returns the eccentricity of the vertices defined by the examples.

The complexity of the function is described here.

Parameters

  • graphName : The name of the graph as a string.
  • vertexExample : An example for the desired vertices (see example).
  • options (optional) : An object containing the following options:
    • direction : The direction of the edges as a string. Possible values are outbound, inbound and any (default).
    • edgeCollectionRestriction : One or multiple edge collection names. Only edges from these collections will be considered for the path.
    • startVertexCollectionRestriction : One or multiple vertex collection names. Only vertices from these collections will be considered as start vertex of a path.
    • endVertexCollectionRestriction : One or multiple vertex collection names. Only vertices from these collections will be considered as end vertex of a path.
    • edgeExamples : A filter example for the edges in the shortest paths (see example).
    • algorithm : The algorithm to calculate the shortest paths as a string. If vertex example is empty Floyd-Warshall is used as default, otherwise the default is Dijkstra
    • weight : The name of the attribute of the edges containing the length as a string.
    • defaultWeight : Only used with the option weight. If an edge does not have the attribute named as defined in option weight this default is used as length. If no default is supplied the default would be positive Infinity so the path and hence the eccentricity can not be calculated.

@EXAMPLES

A route planner example, the absolute eccentricity of all locations.

@EXAMPLE_ARANGOSH_OUTPUT{generalGraphAbsEccentricity1} var examples = require("@arangodb/graph-examples/example-graph.js"); var g = examples.loadGraph("routeplanner"); db._query("RETURN GRAPH_ABSOLUTE_ECCENTRICITY('routeplanner', {})").toArray(); ~ examples.dropGraph("routeplanner"); @END_EXAMPLE_ARANGOSH_OUTPUT

A route planner example, the absolute eccentricity of all locations. This considers the actual distances.

@EXAMPLE_ARANGOSH_OUTPUT{generalGraphAbsEccentricity2} var examples = require("@arangodb/graph-examples/example-graph.js"); var g = examples.loadGraph("routeplanner"); | db._query("RETURN GRAPH_ABSOLUTE_ECCENTRICITY(" +"'routeplanner', {}, {weight : 'distance'})").toArray(); ~ examples.dropGraph("routeplanner"); @END_EXAMPLE_ARANGOSH_OUTPUT

A route planner example, the absolute eccentricity of all German cities regarding only outbound paths.

@EXAMPLE_ARANGOSH_OUTPUT{generalGraphAbsEccentricity3} var examples = require("@arangodb/graph-examples/example-graph.js"); var g = examples.loadGraph("routeplanner"); | db._query("RETURN GRAPH_ABSOLUTE_ECCENTRICITY(" | + "'routeplanner', {}, {startVertexCollectionRestriction : 'germanCity', " + "direction : 'outbound', weight : 'distance'})").toArray(); ~ examples.dropGraph("routeplanner"); @END_EXAMPLE_ARANGOSH_OUTPUT