Dependency graph view
Description
The Dependency graph view displays the dependencies between objects in the active document in a graph. As opposed to the Tree view, objects are listed in reverse chronological order, with the first created object at the bottom. It can be useful in analyzing a LabRPS document and locating forks in a tree. The dependency graph is for now purely a visualization tool, therefore it cannot be edited. It automatically updates if changes are made to the document. The Dependency graph view is a component of the LabRPS interface. By default it shows nothing.
Example of a dependency graph with simulation of wind velocity having a mean wind profile and a wind spectrum.
Installation
To have the graph displayed in the dependency graph view, a third-party software named Graphviz needs to be installed. If you do not have it pre-installed or it is installed in an unconventional location, LabRPS will display the following dialog:
Windows
Download the graphviz-2.xx installer from the Graphviz Download page and launch it to install it. Some older versions seem to have issues displaying the graph; version 2.38 and newer are known to be reliable. You can find all graphviz releases on Gitlab.
macOS
You can install Graphviz using Homebrew if you have macOS Big Sur (11) (or higher). While installing Homebrew, don't get nervous, if macOS asks you to install updates, e.g. for the Xcode commandline tools. These updates are performed later by the installation process.
brew install graphviz
This installs the Graphviz binaries under /usr/local/bin for macOS on Intel, or /opt/homebrew for macOS on Apple Silicon/ARM. LabRPS should automatically find these locations. If the Graphviz program is not found you will be asked to specify a path. Unfortunately we can't navigate directly to the program in the file dialog. There are two options: You can use the key combination Cmd+Shift+. to show hidden items. Or you can use the key combination Cmd+Shift+G to get an input field for the path. Enter one of these paths in the Terminal:
/usr/local/bin
or:
/opt/homebrew/bin
and confirm the input field and the file selection dialog.
In case the Graphviz binaries are installed in a non-standard location try to find the program with the command:
type dot
It will output something like:
dot is /usr/local/bin/dot
And you can tell LabRPS to look in that directory.
If you don't have macOS Big Sur (11) (or higher) Homebrew might not work, but you can use MacPorts instead. Just download the appropriate version for your OS. Once the installation is complete, enter this command in the Terminal:
sudo port install graphviz
Enter your password and wait while the dependencies are downloaded and installed (it can take some time).
The Graphviz binaries may be under /usr/local/bin or /opt/local/bin/dot. LabRPS may automatically find the Graphviz program with the file dialog that, if not enter this command:
type dot
It will output something like:
dot is /opt/local/bin/dot
And you can tell LabRPS to look in that directory as explained before.
It is also possible to make the opt directory visible with this command:
defaults write com.apple.finder AppleShowAllFiles YES;
then:
killall Finder /System/Library/CoreServices/Finder.app;
Therefore you can tell LabRPS to follow this path. It has been successfully tested on macOS 10.13 (High Sierra).
Linux
On most Linux distributions (Debian/Ubuntu, Fedora, OpenSUSE), you just need to install the Graphviz package from the repositories. However, similar to the macOS, in cases where the Graphviz binaries are installed in a non-standard location, try to find the program with the command:
type dot
It may output something like
dot is /usr/local/bin/dot
And therefore you can point LabRPS to look in that directory.
Save
You can save a dependency graph:
- Make sure the Dependency graph view is active.
- Select the File → Save or File → Save As option from the menu.
- Enter a filename and select the file type (*.gv, *.png, *.bmp, *.gif, *.jpg, *.svg or *.pdf).
- Press the Save button.
General principles
- The graph shows objects in reverse chronological order.
- The direction of arrows showing dependencies should always point down. An arrow pointing up indicates a cyclic dependency, an issue that needs to be resolved.
- Objects can have dependencies to multiple parents.
- A Group is displayed as a single element linked to its content.
- File: New document, New Table, New Matrix, New Graph, New 2D Plot, New 3D Plot, Open..., Open Recent, Close, Close All, Save, Save As..., Save a Copy..., Save All, Revert, Import..., Export..., Merge project..., Document information..., Print..., Print preview..., Export PDF...Exit
- Edit: Undo, Redo, Cut, Copy, Paste, Duplicate selection, Refresh, Select All, Delete, Preferences...
- View: Fullscreen, Workbench, Sync view, Record selection, Single document, Multi document, Collapse/Expand, Initiate dragging, Go to selection, Selection back, Selection forward, Status bar
- Tools: Edit parameters..., Export dependency graph..., Project utility..., Alphaplot, Line, Scatter, Scatter, Scatter With X Err, Scatter With Y Err, Scatter With XY Err, Line + Symbol, Special Line + Symbol, Vertical Drop Lines, Spline, Vertical Steps, Horizontal Steps, Vertical Bars, Vertical Stacked Bars, Vertical Grouped Bars ,Horizontal Bars, Horizontal Stacked Bars, Horizontal Grouped Bars, Area, Channel Fil, Pie, Half Pie, Vectors XYXY, Vectors XYAM, Statistical Graph, Box Plot, Histogram, Stacked Histogram, 3D Plot, Bar, Scatter, Layout Grids, Vertical 2 Layouts, Horizontal 2 Layouts, 4(2x2) Layouts, 3D Wire Frame, 3D Surface, 3D Wire Frame Surface, Bar, Scatter, Contour + Color Fill, Countour Lines, Gray Scale Map, 3D Wire Frame Polar, 3D Surface Polar, 3D Wire Frame Surface Polar, 3D Scatter Polar, Polar spectrogram, Graph, Add/Remove Plot xy/xy..., Add Function..., Add Error Bars..., Add/Remove Other Plots..., Add/Remove Plot y..., Add/Remove Vector Plot..., Add Axis..., Add Left Axis, Add Bottom Axis, Add Right Axis, Add Top Axis, Legend Reorder, Add Text, Add Time Stamp, Add Image, Draw Line, Draw Arrow, Draw Ellipse, Add Nested Layout, Add Layout, Add Up, Add Down, Add Left, Add Right, Remove Layout, Swap Layouts..., Graph Tolls, Disable Tools, Data Rearder, Screen Reader, Select Data Range, Move Data Points, Remove Bad Data Points..., Drag Range, Zoom Range, Rescale To Show All, Table, Set Column(s) As, X, Y, Z, X Error, Y Error, None, Fill Selection With, Row Numbers, , Random Values, Custom Random, Show Comments, Show Controls, Formula Edit Mode, Edit Column Description, Change Type & Format, Clear Table, Sort Table, Assign Formula, Recalculate, Add Column, Go To Cell, Export ASCII..., Convert To Matrix, Matrix, Hide Controls, Set Coordinates, Set Display Format, Assign Formula, Recalculate, Clear Matrix, Transpose, Mirror Horizontally, Mirror Vertically, Import Image, Go To Cell, Invert, Determinant, Convert To Table, Add text document, Group, Units Calculator,Customize..., RPS Features..., Addon manager
- Macro: Macro recording, Macros, Recent macros, Execute macro, Attach to remote debugger, Debug macro, Stop debugging, Step over, Step into, Toggle breakpoint
- Help: Help, LabRPS Website, Donate, Users documentation, Python scripting documentation, Automatic Python modules documentation, LabRPS Forum, LabRPS FAQ, Report a bug, About LabRPS, What's This
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, AppImage
- Basics: About LabRPS, Interface, RPS Objects, Object name, Preferences, Workbenches, Document structure, Properties, Help LabRPS, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, WindLab, SeismicLab, SeaLab, UserLab, Spreadsheet, Plot, Web
- Hubs: User hub, Power users hub, Developer hub