Digraph Datatype with Vertex labels

Compute/manipulate directed graph while retaining vertex labels

이 제출물을 팔로우합니다

While many algorithms have been written to compute/manipulate directed graphs (digraphs), few do so with associated vertex names or labels.
The problem I was interested in solving required to see “who depends on who” in a complex web of inter-dependencies. I needed to answer such questions as
- Does A depend on Z?
- Explicitly or implicitly?
- What is the chain of dependencies?
- Which dependencies are redundant?
- Are there any circular dependencies?
This class provides the convenience of an underlying structure to keep the vertices associated with the indices of the Adjacency Matrix, all with performance always in mind for graphs with thousands of vertices.
This also provides a fairly convenient opening to make use of GraphViz technologies (http://www.graphviz.org/) to output a clean graph, but was left out of this class implementation due to the extreme customization allowed via GraphViz.
== UPDATE Aug2014 ==
I've replaced the 4 search functions getDirectForward, getDirectBackward, getAllForward, getAllBackward with one succinct and faster function "findall". In case you need to migrate code, the following are functionally equivalent:

getDirectForward(DG,V) -> findall(DG,V,1)
getDirectBackward(DG,V) -> findall(DG,V,-1)
getAllForward(DG,V) -> findall(DG,V,Inf)
getAllBackward(DG,V) -> findall(DG,V,-Inf)

인용 양식

Steve McClure (2026). Digraph Datatype with Vertex labels (https://kr.mathworks.com/matlabcentral/fileexchange/44125-digraph-datatype-with-vertex-labels), MATLAB Central File Exchange. 검색 날짜: .

일반 정보

MATLAB 릴리스 호환 정보

  • 모든 릴리스와 호환

플랫폼 호환성

  • Windows
  • macOS
  • Linux
버전 퍼블리시됨 릴리스 정보 Action
1.9.0.1

Updated license

1.9.0.0

Adding .mltbx accessibility
Removing dependency on Image Processing (erroneous requirement)

1.8.0.0

Consolidated 4 search functions into 1 with performance enhancements. Added SPY functionality.

1.7.0.0

Inheriting matlab.mixin.Copyable instead of handle. Adapted to @-folder structure. Improved error-checking. Added unittests. Improved performance of several methods.

1.6.0.0

Adding copyright for example.

1.2.0.0

Added methods to allow subclasses to preserve their classes when using superclass methods. Enhanced help.