What is Graphviz
Graphviz was born from AT&T's Bell Labs as an open source (EPL licensed), cross-platform scripted automated drawing software tool. Graphviz uses a DSL language called dot language to write a Script File script file, and then uses the Layout layout engine to parse this Script File script file to complete automated layout rendering.
The operating environment of this tutorial: Windows 7 system, Dell G3 computer.
What is Graphviz?
Graphviz (Graph Visualization)
is an open source (EPL authorized )
, Cross-platform
scripted automated drawing software tool. GraphvizUse a
language called dot
language to write Script File script file
, and then use Layout layout engine
to parse this Script File script file
to complete automated layout rendering
. ##AT&T is one of the three major telecom operators in the United States. Now the telecom operator industry in the United States has been forcibly broken up since the original
After the merger, a competitive situation was formed. The predecessor ofor.gv
AT&T
isBell Telephone Company
,
Bell Telephone Companyis the company that invented the telephone.
In the world of IT software,Bell Labs
created a series of great inventions such asUnix
and
C language.
Graphviz
Script files generally have the file extension
.dot, because
Microsoft Office WordThe extension of the template file is also
.dot. To avoid conflicts, it is generally recommended that the extension of
Graphviz script files be saved as
.gv.
Note: In Graphviz, the word
dot
's
Graphviz
Script script
- 's language name/grammar name
One of the's
#Graphviz
- One of them
Layout
The name is also one of
CLICommand name
Graphviz
Script File (script file)
Common extensions
Why use Graphviz?
Automatic typesetting is more efficient:
- Graphviz
- is mainly used to draw "relationship diagrams",
GraphvizAutomatic typesetting is With "minimized line crossing", Graphviz
's automatic layout is better than "What You See Is What You Get" drawing software (such as:
Omnigraffle,
Microsoft Office Visio, etc. )
Text file management is more convenient:
VCS (Version Control System version control system) - "What you see is what you get" painting software The generated files cannot be effectively versioned, while the text files can be effectively versioned in
VCS
Other automated drawing tools The basis of:
Graphviz - is the basis of other automated drawing tools (such as
PlantUML, etc.), and is also the basis of many Data Visualization data visualization
tools, somewhat similar The role of
Matplotlibin
PythonThe basic structure and usage process of Graphviz
Graphviz## The basic structure of # includes two parts:
and
Script script file. Script script file
mainly includes two parts: Elements entity
and
. Elements entity
mainly includes three types: Graph
,
, and Edge connection
. Remarks: If you need to call
Graphviz
in the software,
also providesIt is also very simple and convenient to use. The general process is as follows:C/CPP,
Graphviz##API
of #Java,
Python,
phpand other languages.
The basic structure of Graphviz
General usage process of Graphviz<h2>
<strong>MacOS standalone client for Graphviz</strong><br>
</h2>
<p>A version of the MacOS X GUI developed by <code>Glen Low prior to
MacOS 10.6 In 2004, he won two Apple Design Awards ("Best Product New to Mac OS X Runner-Up" and "Best OS X Open Source Product 2004 Winner"). ##MacOS Update: This Graphviz GUI version
cannot run in today's macOS based on Intel CPU
. . MacOS 10.2 and 10.3 are based on
PowerPC CPU, and 10.4 released in 2005 began to be based on both
Intel CPU and
PowerPC CPU
PowerPC CPUCLI.
MacOS Can be used usingCurrently there is no independent
GUI client that supports
MacOS X 10.6and later
,
or in other embedded Graphviz tools (for example: using
markdown-preview-enhanced in the
ATOM editor
Graphviz Script File can be embedded in the plug-in).
The script source code illustrated in this article
The dot script source code of Grpahviz’s basic structure
digraph gv_basic_structure{ label=<<B>Graphviz基本组成结构</B>>; labelloc=t; bgcolor=transparent; node[shape=box]; //edge[style=bold]; graphviz[label="Graphviz"]; subgraph{ layout[label="Layouts"]; script[label="Script Files"]; api[label="APIs"] rank=same; } graphviz -> layout; graphviz -> script; graphviz -> api; script -> subgraph{ element[label="Elements"]; attribute[label="Attributes"]; rank=same; } layout -> subgraph{ layout_etc[label="......"]; layout_dot[label="dot"]; layout_neato[label="neato"]; } element -> subgraph{ ele_graph[label="Graph"]; ele_node[label="Node"]; ele_edge[label="Edge"]; } }
GraphvizPlantUML source code using general process@startuml
start
:定义Graph属性;
:定义Node、Edge默认属性;
:添加Node和Edge;
:定义特定Node、Edge的个性属性;
:使用CLI或GUI布局引擎工具渲染绘制;
end
@enduml
Copy after loginFor more programming-related knowledge, please visit:
Programming Teaching! !
@startuml start :定义Graph属性; :定义Node、Edge默认属性; :添加Node和Edge; :定义特定Node、Edge的个性属性; :使用CLI或GUI布局引擎工具渲染绘制; end @enduml
The above is the detailed content of What is Graphviz. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

