用Graphviz画简单依赖图示例
代码:
digraph module {
0 [label="global.h"];
1 [label="bst_operator.c"];
2 [label="cnf_parser.c"];
3 [label="puzzle2cnf.c"];
4 [label="puzzle_generate.c"];
5 [label="puzzle_main.c"];
6 [label="sat_solver.c"];
7 [label="sat_main.c"];
8 [label="dispay.c"];
node [shape="record"];
9 [label="puzzle_generate.exe"];
10 [label="puzzle_main.exe"];
11 [label="sat_main.exe"];
12 [label="display.exe"];
edge [label="被引用", style="dashed", fontname="Microsoft YaHei"];
{0 6 1} -> 2;
3 -> {4 5};
{0 2 6} -> 7;
{0 1} -> 6;
edge [label="被运行", style="dashed", fontname="Microsoft YaHei"];
{9, 10 11} -> 8;
11 -> {4 5};
edge [label="编译", style="bold", fontname="Microsoft YaHei"];
4 -> 9;
5 -> 10;
7 -> 11;
8 -> 12;
}
编译:
dot -Tsvg source.dot -o picture.svg
source.dot是代码文件,picture.svg是输出的矢量图,也可以将svg改成png输出像素图。
效果:
module
0
global.h
2
cnf_parser.c
0->2
被引用
6
sat_solver.c
0->6
被引用
7
sat_main.c
0->7
被引用
1
bst_operator.c
1->2
被引用
1->6
被引用
2->7
被引用
3
puzzle2cnf.c
4
puzzle_generate.c
3->4
被引用
5
puzzle_main.c
3->5
被引用
9
puzzle_generate.exe
4->9
编译
10
puzzle_main.exe
5->10
编译
6->2
被引用
6->7
被引用
11
sat_main.exe
7->11
编译
8
dispay.c
12
display.exe
8->12
编译
9->8
被运行
10->8
被运行
11->4
被运行
11->5
被运行
11->8
被运行
用Graphviz画简单依赖图示例的更多相关文章
- 使用 Graphviz 画拓扑图
使用 Graphviz 画拓扑图 0)前述 本文着重讲一下 Graphviz 的风格控制,基础一些的就不在这里讲啦. graphviz 的主页是http://www.graphviz.org/. Gr ...
- 利用Graphviz 画结构图[转]
转自:http://www.cnblogs.com/sld666666/archive/2010/06/25/1765510.html 利用Graphviz 画结构图 1. Graphviz介绍 ...
- 利用Graphviz画出图
graphviz官网:http://www.graphviz.org/ 背景:有画图需要,之前见到别人用graphviz画,画出来的图漂亮,且自动帮你排版安排布局,所以自己想尝试用它画. 其中遇到的几 ...
- 【java开发系列】—— spring简单入门示例
1 JDK安装 2 Struts2简单入门示例 前言 作为入门级的记录帖,没有过多的技术含量,简单的搭建配置框架而已.这次讲到spring,这个应该是SSH中的重量级框架,它主要包含两个内容:控制反转 ...
- Springmvc整合tiles框架简单入门示例(maven)
Springmvc整合tiles框架简单入门示例(maven) 本教程基于Springmvc,spring mvc和maven怎么弄就不具体说了,这边就只简单说tiles框架的整合. 先贴上源码(免积 ...
- hadoop环境安装及简单Map-Reduce示例
说明:这篇博客来自我的csdn博客,http://blog.csdn.net/lxxgreat/article/details/7753511 一.参考书:<hadoop权威指南--第二版(中文 ...
- EasyHook远注简单监控示例 z
http://www.csdn 123.com/html/itweb/20130827/83559_83558_83544.htm 免费开源库EasyHook(inline hook),下面是下载地址 ...
- wxWidgets学习笔记——在屏幕上画简单的图形和文字
在屏幕上画简单图形和显示图片.处理简单鼠标键盘事件 /*************************************************************** * Name: M ...
- Web Service简单入门示例
Web Service简单入门示例 我们一般实现Web Service的方法有非常多种.当中我主要使用了CXF Apache插件和Axis 2两种. Web Service是应用服务商为了解决 ...
随机推荐
- (八)easyexcel的使用
使用手册:https://www.yuque.com/easyexcel/doc/easyexcel 主要注意的点就是修改监听器为通用的监听器 原监听器: package read; import j ...
- HTMLTestRunner生成html测试报告
使用:把文件放到项目某个文件夹中,引入方式如下 import unittest import env import vendor.report.HTMLTestRunnerNew as HTMLTes ...
- Android学习笔记物理按键事件处理
常见的物理按键: Android为每个物理按键都提供了如下几个回调方法: 代码示例: package com.example.demo3; import androidx.appcompat.app. ...
- Spring Boot 分离资源文件打包
Spring Boot项目默认的会打包成单一的jar文件,但是有时候我们并不想让配置文件.依赖包都跟可执行文件打包到一起.这时候可以在pom.xml文件中进行配置,从而使资源文件.依赖包和可执行文件分 ...
- TiDB初探
TiDB是一个开源的分布式NewSQL数据库,设计的目标是满足100%的OLTP和80%的OLAP,支持SQL.水平弹性扩展.分布式事务.跨数据中心数据强一致性保证.故障自恢复的高可用.海量数据高并发 ...
- async/await到底该怎么用?如何理解多线程与异步之间的关系?
前言 如标题所诉,本文主要是解决是什么,怎么用的问题,然后会说明为什么这么用.因为我发现很多萌新都会对之类的问题产生疑惑,包括我最初的我,网络上的博客大多知识零散,刚开始看相关博文的时候,就这样.然后 ...
- 【asp.net core 系列】12 数据加密算法
0. 前言 这一篇我们将介绍一下.net core 的加密和解密.在Web应用程序中,用户的密码会使用MD5值作为密码数据存储起来.而在其他的情况下,也会使用加密和解密的功能. 常见的加密算法分为对称 ...
- 利用synchronized解析死锁的一种形成方式
代码 import ... public class Test{ private static Object o1=new Object(); private static Object o2=new ...
- android studio 中jni底层日志的打印
1 添加ndk对log支持若需要添加ndk对log的支持,只需要通过以下2步即可实现. 1.1 修改Android.mk如生成的库文件是“.so文件”,则在Android.mk中添加如下内容:LOCA ...
- 10、一个action中处理多个方法的调用第二种方法method的方式
在实际的项目中,经常采用现在的第二种方式在struct.xml中采用清单文件的方式 我们首先来看action package com.bjpowernode.struts2; import com.o ...