GraphvizWpf 1.0.0

dotnet add package GraphvizWpf --version 1.0.0
NuGet\Install-Package GraphvizWpf -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="GraphvizWpf" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add GraphvizWpf --version 1.0.0
#r "nuget: GraphvizWpf, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install GraphvizWpf as a Cake Addin
#addin nuget:?package=GraphvizWpf&version=1.0.0

// Install GraphvizWpf as a Cake Tool
#tool nuget:?package=GraphvizWpf&version=1.0.0

GraphvizWpf

A WPF control that renders the Graphviz graphs described in the Dot language.<br> The control allows the creation of interactive graphs by adding mouse-click events, tooltips, and more. <img src="doc/Screenshot.png" width="70%" height="70%"/>

Limitations

  • Only dashed, dotted and solid line styles are supported.
  • Specifying an image in a dot file like vertexName [image="imageName.png"] is not supported

How to use

  • Copy the Graphviz dlls to the folder with the executable. This can be done by adding a prebuild event to your csproj file:
<Target Name="DownloadGraphviz" BeforeTargets="BeforeBuild" Condition="!Exists('$(BuildFolder)/Graphviz.zip')">
  <DownloadFile SourceUrl="https://gitlab.com/api/v4/projects/4207231/packages/generic/graphviz-releases/11.0.0/windows_10_cmake_Release_Graphviz-11.0.0-win64.zip" DestinationFolder="$(BuildFolder)" DestinationFileName="Graphviz.zip" />
  <Unzip SourceFiles="$(BuildFolder)Graphviz.zip" DestinationFolder="$(BuildFolder)" />
</Target>
<Target Name="CopyGraphvizBinariesToOutputFolder" AfterTargets="DownloadGraphviz" BeforeTargets="BeforeBuild" Condition="!Exists('$(OutputPath)/config6')">
  <ItemGroup>
    <GraphVizBinaries Include="$(BuildFolder)/Graphviz-*-win64/bin/*.dll;$(BuildFolder)/Graphviz-*-win64/bin/config6" />
  </ItemGroup>
  <Copy SourceFiles="@(GraphVizBinaries)" DestinationFolder="$(OutputPath)" />
</Target>
  • Look at the example project Test from this repository, which shows how to make an interactive zoomable graph.

How the library works

The GraphvizWpf library uses Graphviz to convert the Dot graph representation to the Json format with the Dot drawing commands. Then these commands are executed by creating shapes on a WPF Canvas

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.0 is compatible.  netcoreapp3.1 was computed. 
.NET Framework net462 is compatible.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETCoreApp 3.0

    • No dependencies.
  • .NETFramework 4.6.2

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0 84 6/18/2024