1 安装及基本使用

  1) 下载安装

    下载地址

    可以下载安装版进行安装或者解压版直接使用

  2) 添加系统path

    为了能够在dos中使用命令, 需要添加环境变量

    默认安装路径为 C:\Program Files (x86)\Graphviz2.38\bin

    添加至系统环境变量

  3) 测试能够正常使用

  在dos中输入

dot -version

  4) 打开软件

    由于默认安装不创建快捷方式到桌面

    需要在所有程序中找到gvedit.exe打开

    为了下次方便, 找到后可以添加快捷方式

  5) 创建一个图的过程

    打开软件, 新建一个源文件, 源文件是gv格式的

    编辑内容

    软件不能直接创建成图片, 需要使用命令

    可以在dos中输入

格式:
dot gv文件绝对路径 -Tpng -o 创建的文件 范例:
dot D:\test\.gv -Tpng -o D:\image.png

2 流程图的编写

  定义一个digraph 后面跟名字加上花括号, 花括号里面就可以输入内容了

  定义一个图形

名字[lable="显示的内容" shape="形状"]

  创建图形到图形的有向箭头

图形名字 -> 图形名字[label="这个指向附带的描述"]

  具体shape有

    diamond 菱形

    box 矩形

    circle 圆形

  三次登录源码示例

digraph login3times{

    edge[fontname="Microsoft YaHei"]
node[shape=box, fontname="Microsoft YaHei" size="20,20"]
fontname="Microsoft YaHei"
label="三次登录流程图" start[label="开始" shape=circle]
end[label="登录成功" shape=circle] read_user_info[label="读取用户信息" shape=box]
read_black_list[label="读取黑名单" shap=box]
input_user[label="输入用户名" shap=box]
input_password[label="输入密码" shap=box]
add_black_list[label="加入黑名单" shap=box] in_black_list[label="判断是否在黑名单中" shap=diamond]
in_user_list[label="判断是否在用户信息中" shap=diamond]
password_right[label="判断密码是否正确" shap=diamond]
is_three_times[label="是否输入错误三次" shap=diamond] start -> read_user_info
read_user_info -> read_black_list
read_black_list -> input_user
input_user -> input_password input_password -> in_black_list
in_black_list -> in_user_list[label="不在"]
in_black_list -> input_user[label="在"] in_user_list -> input_user[label="不在"]
in_user_list -> password_right[label="在"] password_right -> end[label="正确"]
password_right -> is_three_times[label="不正确"] is_three_times -> add_black_list[label="是"]
is_three_times -> input_user[label="不是"] add_black_list -> input_user
}

  效果如下

    

  其中edge和node里面的内容是为了解决中文乱码的问题

  具体的字体有

黑体:SimHei
宋体:SimSun
新宋体:NSimSun
仿宋:FangSong
楷体:KaiTi
仿宋_GB2312:FangSong_GB2312
楷体_GB2312:KaiTi_GB2312
微軟正黑体:Microsoft JhengHei
微软雅黑体:Microsoft YaHei

  更多图形可以参考官网

  一些介绍

  中文参考文档

004-画图神器-graphviz的更多相关文章

  1. 画结构图的神器 Graphviz

    经常看到别人的论文里各种优美的图,没想过它们是怎么来的,前两天也是在看论文的时候被推荐了一款画图软件graphviz,稍微了解了一下这个画图软件,据说是贝尔实验室的几位牛人开发出来的,试了一下觉得很不 ...

  2. 画图工具Graphviz安装配置

    Graphviz (英文:Graph Visualization Software的缩写)是一个由AT&T实验室启动的开源工具包,用于绘制DOT语言脚本描述的图形.它也提供了供其它软件使用的库 ...

  3. 干掉visio,这个画图神器太香了

    前言 看过我以往文章的小伙伴可能会发现,我的大部分文章都有很多配图.我的文章风格是图文相结合,更便于大家理解. 最近有很多小伙伴发私信问我:文章中的图是用什么工具画的.他们觉得我画的图风格挺小清新的, ...

  4. python中的画图神器——turtle模块

    turtle库的基础命令介绍(1)画布画布cancas是绘图区域,可以设置它的大小和初始位置 turtle.screensize(1000,600,'red') 大小的设置 turtle.setup( ...

  5. 绝杀processOn,这款UML画图神器,阿里字节都用疯了,你还不知道?

    大家好,我是陶朱公Boy,又和大家见面了. 前言 在文章开始前,想先问大家一个问题,大家平时在项目需求评审完后,是直接开始编码了呢?还是会先写详细设计文档,后再开始进行编码开发? ☆现实 这个时候可能 ...

  6. 流程图 Graphviz - Graph Visualization Software

    0.目录 1.参考 https://www.processon.com/  应该值得一试 知乎 用什么软件画流程图? 9款国内外垂直领域的在线作图工具[可代替visio] 程序员必知的七个图形工具 说 ...

  7. 深入理解 JavaScript,以及 Linux 下的开发调试工具

    前言 JavaScript 是我接触到的第二门编程语言,第一门是 C 语言.然后才是 C++.Java 还有其它一些什么.所以我对 JavaScript 是非常有感情的,毕竟使用它有十多年了.早就想写 ...

  8. 深入理解JavaScript,这一篇就够了

    前言 JavaScript 是我接触到的第二门编程语言,第一门是 C 语言.然后才是 C++.Java 还有其它一些什么.所以我对 JavaScript 是非常有感情的,毕竟使用它有十多年了.早就想写 ...

  9. The DOT Language

    CSDN新首页上线啦,邀请你来立即体验! 立即体验 博客 学院 下载 更多 登录注册 The DOT Language 翻译 2014年04月15日 11:27:07 标签: EBNF / 语言 / ...

随机推荐

  1. 【Exception】查看异常出现在具体的文件名/类名/方法名/具体行号

    今天在处理异常日志保存过程中,想要获取到异常抛出在具体在那个文件,哪个类下的哪个方法中的具体第几行,所以具体实现如下 try{ Integer adminID = Integer.parseInt(a ...

  2. HDOJ1071

    The area   拿到题的第一想法,又是一道水题,知道P1.P2.P3三点的坐标,就能够确定抛物线的公式.确定抛物线的公式就能够进行积分,然后就没有然后了.纯粹的数学题. #include< ...

  3. U盘启动时提示starting cmain,3种终极解决方案

    U盘启动时提示“starting cmain”一般是这样子的: <ignore_js_op> 这种情况,一般是制作好了PE启动U盘之后,启动不了才会这样,一般正常情况的话,这一句英文是一闪 ...

  4. Direct2D教程(一)Direct2D已经来了,谁是GDI的终结者?

    什么是Direct2D 一言以蔽之,就是Windows 7平台上的一个2D图形API,可以提供高性能,高质量的2D渲染.大多数人对Direct2D可能都比较陌生,以至于我之前在论坛上提到这个词的时候, ...

  5. sql server 2008出现远程过程调用失败

    sql server  2008出现远程过程调用失败解决方式有下面几种: 1.依照网上说的方法.是由于装了vs 2012或是vs2013或是vs2015等高版本号时.安装了Microsoft SQL ...

  6. hdu 4432 数学杂题

    http://acm.hdu.edu.cn/showproblem.php?pid=4432 6分钟写的代码,一上午去调试,, 哎,一则题目没看懂就去写了,二则,哎,,恶心了.在坚持几天然后ACM退役 ...

  7. 使用 xmllint 验证 odoo xml文件

    Odoo 源码包含了2个 relax ng 文件,也是odoo sa用来验证xml的正确性的. openerp/import_xml.rng openerp/addons/base/rng/view. ...

  8. android客户端向服务器端验证登陆方法的实现2

    一.在上一篇文章中,我只是提到了其中一种方法来实现登陆 大家可以参见: http://www.apkbus.com/android-45004-1-1.html      android获取web服务 ...

  9. D堆的实现

    实现上一篇博客(http://blog.csdn.net/buleriver/article/details/38469977)说的D堆.假设把mD设置成2.D堆就退化成二叉堆,也就是说.二叉堆是D堆 ...

  10. mdadm

    http://en.wikipedia.org/wiki/Mdadm mdadm From Wikipedia, the free encyclopedia     mdadm Original au ...