程序员应该知道的七个图形工具
2016-06-29 14:17
471 查看
今天让我们来分享一下,程序员常用的一些图形工具,主要有两类:
流程图
数据可视化
说到流程图还是再次提及一下,我们之前说到的Graphviz 。
Graphviz (英文:Graph Visualization Software的缩写)是一个由AT&T实验室启动的开源工具包,用于绘制DOT语言脚本描述的图形。它也提供了供其它软件使用的库。
它的主要特点是代码生成图像,并且足够的简单。
在我的那个“Web Developer 成长路线图”里,就是用这个工具生成下面这个复杂的图形。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/7b733acdc4e24e5544eda78fc94a8e65)
而其代码特别简单——和我们平时表达的手法是一样的,即:
Graphviz有一个大的优点和弱点是:自动生成,导致画线的时候很出现出问题。接着,我们就来看看手动画线的例子。
在Windows世界里,在这一类的工具里面最常见的算是Visio:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/f4e7ce4f65d27ca2775183600426c259)
遗憾的是,它并不支持在Mac OS上使用。而且,它并不在我购买的Office 365套装里。
在Mac世界里,最好的工具算是OmniGraffle,就是很贵——我们平时使用的是公司的Mac电脑,使用盗版软件是有法律风险的。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/f0242d5c200c7073c5f8d7710af1d82b)
在GNU/Linux世界里,我们使用Dia。
Dia 是开放源代码的流程图软件,是GNU计划的一部分,程序创立者是Alexander Larsson。Dia使用单一文件界面模式,类似于GIMP与Inkscape。 Dia将多种需求以模块化来设计,如流程图、网络图、电路图等。各模块之间的符号仍是可以通用的,并没有限制。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/5533275472aadd4637c436cca329b229)
顺便安利一下,我最喜欢的操作系统OpenSuSE——简洁、尾长、绿色。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/72847bca462383ca915432cc61e2a54e)
OpenSuSE在KDE桌面下效果最赞了——因为KDE和OpenSuSE都是德国制造。总的来说,会比Debian系的Debian和Ubunt,及RetHat系的CentOS及Fedora稳定、漂亮。
令人遗憾的是这三个工具,我都用不了。Mac对X Windows的支持不是一般的差,于是我就需要别的替代工具。
这个工具还是相当好用,至少是在GxFxW内比较快——我之前使用过Creately、draw.io、Gliffy等等的一些工具,只是随着版图的扩展,很多地区都已经“xx”了。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/f549ed294252d4cd96015b6fbd06c04f)
不过遗憾的是:他们没有给我广告费。
ProcessOn是一个在线协作绘图平台,为用户提供最强大、易用的作图工具!支持在线创作流程图、BPMN、UML图、UI界面原型设计、iOS界面原型设计等。
同样的,在我的那个“Developer进阶书单”中,就是用这个工具画出规规矩矩的线。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/32d6ea279d13256a47e04d4274f18398)
并且,它还是跨平台的。
由于翻译和写书的需要,我成了一个Office 365订阅用户。于是发现在Word等一系列的Office工具中,自带了一个SmartArt的工具:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/321db73d5ab2f8d61592abb6b9347dbc)
可以画出很多很有意思的图形,比如:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/94a78b85e9fc9d01af41caf231ae156c)
又或者是:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/ed80d1c10503809f56f84af2bce78d2e)
分分钟就能画一个的节奏。
我想这个一般人都是知道的。
XMind思维导图软件被著名互联网媒体Lifehacker评选为“最佳头脑风暴和思维导图工具”及”最受欢迎的思维导图软件”。
它有一个很大的优点是使用了全球最先进的Eclipse RCP 软件架构,支持跨平台使用。它有一个很大的缺点是使用了全球最先进的Eclipse RCP 软件架构,导致了有点卡。
相比于流程图什么的,它只适合做脑图。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/06edf828218c3281bb3244f3d4105d32)
如果你还在使用Eclipse,那么你应该试试Intellij IDEA了。
D3.js(D3或Data-Driven Documents)是一个用动态图形显示数据的JavaScript库,一个数据可视化的工具。
与上面的工具相比,这个工具可能没有那么方便。但是,作为一个数据可视化工具,它不仅仅可以做出各种炫酷的图形。
还可以做出一个技能树:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/1c489aa037bf2087f065cb09110c65f3)
这个项目的GitHub见:https://github.com/phodal/sherlock
Leaflet 是一个为建设移动设备友好的互动地图,而开发的现代的、开源的JavaScript 库。
虽然它与上面的图形没有啥关系,但是它带了一个图字啊。与Google Map原生的API,或者OpenStreet相比,它最大的优点是对移动设备支持好。
并且,它也是一个可以根据数据(GEOJSON,地理数据)生成图形的工具。
流程图
数据可视化
流程图:Graphviz
说到流程图还是再次提及一下,我们之前说到的Graphviz 。Graphviz (英文:Graph Visualization Software的缩写)是一个由AT&T实验室启动的开源工具包,用于绘制DOT语言脚本描述的图形。它也提供了供其它软件使用的库。
它的主要特点是代码生成图像,并且足够的简单。
在我的那个“Web Developer 成长路线图”里,就是用这个工具生成下面这个复杂的图形。
而其代码特别简单——和我们平时表达的手法是一样的,即:
"包管理" -> "包发布" -> "自动部署" "CLI" -> "部署" "脚本语言(Bash,Perl,Ruby,Python etc)" -> "部署" "脚本语言(Bash,Perl,Ruby,Python etc)" -> "构建" "*nix" -> "软件编译" -> "部署" "构建" -> "软件编译"
Graphviz有一个大的优点和弱点是:自动生成,导致画线的时候很出现出问题。接着,我们就来看看手动画线的例子。
流程图: Visio vs Dia vs OmnIGraffle
在Windows世界里,在这一类的工具里面最常见的算是Visio:遗憾的是,它并不支持在Mac OS上使用。而且,它并不在我购买的Office 365套装里。
在Mac世界里,最好的工具算是OmniGraffle,就是很贵——我们平时使用的是公司的Mac电脑,使用盗版软件是有法律风险的。
在GNU/Linux世界里,我们使用Dia。
Dia 是开放源代码的流程图软件,是GNU计划的一部分,程序创立者是Alexander Larsson。Dia使用单一文件界面模式,类似于GIMP与Inkscape。 Dia将多种需求以模块化来设计,如流程图、网络图、电路图等。各模块之间的符号仍是可以通用的,并没有限制。
顺便安利一下,我最喜欢的操作系统OpenSuSE——简洁、尾长、绿色。
OpenSuSE在KDE桌面下效果最赞了——因为KDE和OpenSuSE都是德国制造。总的来说,会比Debian系的Debian和Ubunt,及RetHat系的CentOS及Fedora稳定、漂亮。
令人遗憾的是这三个工具,我都用不了。Mac对X Windows的支持不是一般的差,于是我就需要别的替代工具。
在线流程图:Processon
这个工具还是相当好用,至少是在GxFxW内比较快——我之前使用过Creately、draw.io、Gliffy等等的一些工具,只是随着版图的扩展,很多地区都已经“xx”了。不过遗憾的是:他们没有给我广告费。
ProcessOn是一个在线协作绘图平台,为用户提供最强大、易用的作图工具!支持在线创作流程图、BPMN、UML图、UI界面原型设计、iOS界面原型设计等。
同样的,在我的那个“Developer进阶书单”中,就是用这个工具画出规规矩矩的线。
并且,它还是跨平台的。
各种图: Word和Excel
由于翻译和写书的需要,我成了一个Office 365订阅用户。于是发现在Word等一系列的Office工具中,自带了一个SmartArt的工具:可以画出很多很有意思的图形,比如:
又或者是:
分分钟就能画一个的节奏。
脑图: XMind
我想这个一般人都是知道的。XMind思维导图软件被著名互联网媒体Lifehacker评选为“最佳头脑风暴和思维导图工具”及”最受欢迎的思维导图软件”。
它有一个很大的优点是使用了全球最先进的Eclipse RCP 软件架构,支持跨平台使用。它有一个很大的缺点是使用了全球最先进的Eclipse RCP 软件架构,导致了有点卡。
相比于流程图什么的,它只适合做脑图。
如果你还在使用Eclipse,那么你应该试试Intellij IDEA了。
各种图:D3.js
D3.js(D3或Data-Driven Documents)是一个用动态图形显示数据的JavaScript库,一个数据可视化的工具。与上面的工具相比,这个工具可能没有那么方便。但是,作为一个数据可视化工具,它不仅仅可以做出各种炫酷的图形。
还可以做出一个技能树:
这个项目的GitHub见:https://github.com/phodal/sherlock
地图:Leaflet
Leaflet 是一个为建设移动设备友好的互动地图,而开发的现代的、开源的JavaScript 库。虽然它与上面的图形没有啥关系,但是它带了一个图字啊。与Google Map原生的API,或者OpenStreet相比,它最大的优点是对移动设备支持好。
并且,它也是一个可以根据数据(GEOJSON,地理数据)生成图形的工具。
相关文章推荐
- 细看网络仿真工具
- C#实现属于自己的QQ截图工具
- 详解SQL Server 2008工具SQL Server Profiler
- C#实现的SN快速输入工具实例
- DOS下的必备工具
- 基于C++自动化编译工具的使用详解
- C#实现图形位置组合转换的方法
- 如何使用Strace调试工具
- 五个PHP程序员工具
- ASP.NET开发中经常用到10款工具软件介绍
- C#实现判断图形文件格式的方法
- C#实现图形路径变换的方法
- 发布一个高效的JavaScript分析、压缩工具 JavaScript Analyser
- 阻止网页挂马的若干工具小集合
- Java加密解密工具(适用于JavaSE/JavaEE/Android)
- 10个实用的脚本代码工具
- php生成图形验证码几种方法小结
- CentOS的图形安装及初始环境设置教程