专注Java领域的优质技术号,欢迎关注。
作者:phodal
今天,我们来分享一些常用的绘图工具。有两个主要类别:
流程图数据的可视化
流程图:Graphviz
说到流程图,就提一下我们之前说的Graphviz。
Graphviz(英文:Graph Visualization Software的缩写)是由ATT实验室发起的开源工具包,用于绘制用点语言脚本描述的图形。它还为其他软件提供了库。
它的主要特点是代码生成图像,并且足够简单。
在我的《Web开发者成长路线图》(GitHub 3360 https://GitHub . com/pho dal/Developer)中,我用这个工具生成了下面这个复杂的图形。
而且它的代码非常简单——它和我们通常的表达方式一样,即:
‘包管理’-‘包发布’-‘自动部署’‘CLI’-‘部署’脚本语言(Bash、Perl、Ruby、Python等)’-‘部署’脚本语言(Bash、Perl、Ruby、Python等)’-‘构建’‘* nix’-‘软件编译’接下来我们来看一下手办动画线的例子。
流程图: Visio vs Dia vs OmnIGraffle
在Windows世界中,Visio:是这类工具中最常见的。
MS-Visio-flowchart.png
遗憾的是,它在Mac OS上不受支持。而且我买的Office 365套件里也没有。
在Mac世界里,最好的工具是OmniGraffle,但它很贵――我们通常使用该公司的Mac电脑,使用盗版软件存在法律风险。
Omnigrafflescreen.jpg
在GNU/Linux世界中,我们使用Dia。
Dia是一个开源的流程图软件,是GNU项目的一部分。该计划的创始人是亚历山大拉尔森。Dia使用单一文件接口模式,类似于GIMP和Inkscape。Dia通过模块化设计各种需求,如流程图、网络图、电路图等。模块之间的符号还是可以通用的,没有限制。
dia _截图. png
对了,我最喜欢的操作系统OpenSUSE,简单,长,绿色。
opensuse.jpg
OpenSuSE在KDE桌面下工作得最好――因为KDE和OpenSuSE都是德国制造的。总的来说比Debian的Debian和Ubunt,RetHat的CentOS和Fedora更稳定美观。
可惜这三个工具我都不会用。对Mac X Windows的支持不是一般的差,所以我需要其他替代工具。
在线流程图:Processon
这个工具还是挺好用的,至少比在GxFxW快一些――我用过一些像Creately,draw.io,Gliffy等工具。之前,但是随着布局的扩大,很多区域已经“xx”了。
tlok.jpg
可惜他们没给我广告费。
ProcessOn是一个在线协作绘图平台,为用户提供最强大、最易用的绘图工具!支持在线创建流程图、BPMN、UML图、UI界面原型设计、iOS界面原型设计等。
同样的,在我的《开发者进阶书单》(GitHub 3360 https://GitHub . com/phodal/Book tree)中,我用这个工具画了一条乖巧的线。
BookTree.png
而且,是跨平台的。
各种图: Word和Excel由于翻译和写书的需要,我成了一个Office 365订阅用户。于是发现在Word等一系列的Office工具中,自带了一个SmartArt的工具:
smart-art.png
可以画出很多很有意思的图形,比如:
编程之路.png
又或者是:
分分钟就能画一个的节奏。
脑图: XMind
我想这个一般人都是知道的。
XMind思维导图软件被著名互联网媒体Lifehacker评选为“最佳头脑风暴和思维导图工具”及”最受欢迎的思维导图软件”。
它有一个很大的优点是使用了全球最先进的Eclipse RCP 软件架构,支持跨平台使用。它有一个很大的缺点是使用了全球最先进的Eclipse RCP 软件架构,导致了有点卡。
相比于流程图什么的,它只适合做脑图。
banner_index.png
如果你还在使用Eclipse,那么你应该试试Intellij IDEA了。
各种图:D3.js
D3.js(D3或Data-Driven Documents)是一个用动态图形显示数据的JavaScript库,一个数据可视化的工具。
与上面的工具相比,这个工具可能没有那么方便。但是,作为一个数据可视化工具,它不仅仅可以做出各种炫酷的图形。
还可以做出一个技能树:
sherlock.png
这个项目的GitHub见:https://github.com/phodal/sherlock
地图:Leaflet
Leaflet 是一个为建设移动设备友好的互动地图,而开发的现代的、开源的JavaScript 库。虽然它与上面的图形没有啥关系,但是它带了一个图字啊。与Google Map原生的API,或者OpenStreet相比,它最大的优点是对移动设备支持好。
并且,它也是一个可以根据数据(GEOJSON,地理数据)生成图形的工具。
链接:https://www.jianshu.com/p/866cb6c89c33