美文网首页ba
写作中常用的绘图工具

写作中常用的绘图工具

作者: ThoughtWorks | 来源:发表于2021-11-30 14:52 被阅读0次

    由于在写作中经常需要配图,本文分享下我常用的绘图工具以及如何存储并展示配图。

    白板绘图


    Excalidraw

    白板绘图的好处在于灵活度非常高。好的白板工具可以很方便的绘制自由的图片和预定义的结构化图形,这方面我在用的工具是 Excalidraw,由于是本工具是开源的,我也部署了自己的 Excalidraw 白板工具。在 基于纯文本的人生管理 这篇文章里所有的配图都是用 Excalidraw 绘制,比如下图:

    一个好的白板工具应该需要有什么特性呢?Excalidraw 的创始人写了一篇很好的文章 Rethinking Virtual Whiteboard 来回答这个问题。

    Excalidraw 的优点有以下:

    • 无需注册,直接使用,用完即走;
    • 代码开源,免费使用,不用担心商业问题;
    • 多人实时协作,共同绘制;
    • 数据可导出,可通过链接直接分享给任何人;
    • 数据存储在浏览器本地,文件可离线编辑;
    • 扩展性强,可以导入其他人绘制的资源库;
    • 数据采用端到端加密,服务器端数据加密存储,隐私保护很可靠;
    • 保存的文件可直接在 VSCode 编辑(通过插件),同时可被其他网站嵌入使用,比如不只是笔记工具的 Logseq 里的绘图功能就是嵌入 Excalidraw 完成的;

    拥有这么多特性,用 Excalidraw 能画啥图得取决于你的想象力了:在 One Year of ExcalidrawCreate Diagrams That Look Like Hand-drawn 这两篇文章里可以看到使用 Excalidraw 画常见的结构图如架构图、结构图、流程图与交互图等,也可以自由绘制如品牌Logo、事件风暴图、原型图、对比图、手绘图、四格漫画与平面图等。

    除了 Excalidraw 外,其创始人早期用了另一个白板工具近 10 年,这个工具是 zwibbler,我看了下感觉用 Excalidraw 完全可以替代它。

    Miro && Mural && Figma

    这几个在线白板很适合团队协作(比如敏捷工作流如 Retro、站会、头脑风暴、工作坊等),和 Excalidraw 不同之处在于,它们支持的模版更为丰富,还能集成不同的 App,比如在白板里插入表格和图片之类。其中 Figma 虽然是个类似 Sketch 的设计工具,但是也支持白板的用法。

    不好的地方在于它们都不是开源的,但是也提供了免费版。当然也可以用 Google 出品的 jamboard 替代,虽然没有提供模版,但是基本功能都类似。

    Perfect FreeHand

    带有压感的在线手写板工具,以下是用手写板手写的效果:

    文本绘图


    文本绘图的好处在于修改、存储方便,很简单即可绘制出固定模式的图,如时序图、架构图、部署图、线框图、甘特图、WBS与思维导图。 PlantUML 是一个支持文本绘制类UML图的工具,可以在 Real World Plantuml 找到很多用它实现的图。我一般用它来绘制以下一些图。

    思维导图

    文本如下:

    @startmindmap

    skinparam monochrome true

    Markdown排版

    • 写作
    1. 博客
    2. 知乎专栏
    3. 微信公众号
    • 幻灯片
    • 专业报告
    • 笔记

    @endmindmap

    可以使用在线编辑器 PlantUML Editor 在线编辑预览。

    架构图

    源文本见 arch_aws.plantuml

    关于文本绘图的进一步思考,推荐看 C4 Model 的作者这篇 Software architecture diagrams as text

    专业绘图


    Sketch/OmniGraffle

    源文件见 Serverless.sketch

    要想用 Sketch 画好配图,配色很重要,这方面可以看 draveness 写的这篇《技术文章配图指南》。当然 Sketch 可以做的远不止这些,不过这不在本文讨论范围。

    draw.io/Google Drawings

    这类工具都可以绘制各类你想要的配图,唯一限制的就是你的想象力了。

    在线绘图工具如 Google Drawings 的多人实时协作功能更是团队协作绘图利器。这篇《分布式事务中的时间戳》中的配图就是用 Google Drawings 绘制的。

    代码绘图


    Python Jupyter Notebook

    我用这个绘制一些数据分析的图,比如这种:

    源代码见 index_month_quote_change.ipynb

    其他工具


    Excel

    用 Excel 画图不是不可以,你可以用数据绘制图,也可以用单元格来绘制马赛克的图,不过我一般用它来绘制投资组合的一些走势图和状态图。

    配图存储与展示


    图片我一般用 VSCode 插件 markdown image paste 配置 AWS S3 后,可将复制到剪贴板的图片一键上传至 S3 桶,之后可通过桶绑定的域名访问图片,具体详见《我的笔记系统》VSCode插件一键存储图片至S3节。

    关于绘图工具的思考

    没有一种工具是万能的,万能如 Excalidraw 也无法替代 Lucidchart/Draw.io/Google Drawings/Visio 这些复杂的工具(他们更适合复杂的对精确性有高度要求的图)。更没有一种软件工具能替代纸和笔。工具更重要的是背后使用它的人,能用图片讲好一个故事才是我们需要不断提升的能力,一个工具能做到不限制你的发挥就算适合的好的工具。


    文/Thoughtworks马大伟
    原文链接:https://insights.thoughtworks.cn/practical-drawing-toolbox/
    更多精彩洞见,请关注微信公众号Thoughtworks洞见。

    相关文章

      网友评论

        本文标题:写作中常用的绘图工具

        本文链接:https://www.haomeiwen.com/subject/uvfxxrtx.html