用Python将图表作为代码
发布者::Guglielmo Iozzia inPython July 8th, 2021 0 Views
在我的职业生涯中,我注意到企业往往不愿意为工程团队提供绘制图表的软件许可。在最好的情况下,MS Visio通常是唯一的选择,在试图绘制现代软件架构时,这并不是最好的体验。有几个在线选项可用,但它们需要分享项目细节,不能离开你的组织网络,所以不能经常考虑它们。另外,在把一切都当作代码的同时,如果能把图也当作代码就更好了。所有这些需求都可以通过采用Diagrams来满足。它是一个开源的Python包,允许你以编程方式绘制云系统架构图,然后将其置于版本控制之下,(因为在最后它们是普通的Python文件)。它支持云(AWS、Azure、GCP、阿里巴巴、Oracle)和内部系统架构图。Diagrams的节点还包括Kubernetes、编程语言和框架。
Diagrams支持Python 3.6以上,需要开源的Graphviz 可视化软件进行渲染。一旦Graphviz被安装,Diagrams就可以通过PyPI或Anaconda获得。
Diagrams使用起来很直观,它是基于以下概念。
- 图:自我解释 :)
- 节点:一个单一的系统组件对象。
- 集群:一个本地集群上下文。
- 边缘:一个节点之间的连接。它们带有几个额外的属性。
官方的Diagrams文档很全面,所以我不打算深入研究可用的组件,但我要展示一个具体的代码示例,为一个通用的AWS无服务器数据集成中心生成一个图。
一旦这个源代码被保存下来,就可以像其他Python脚本一样执行。
python aws_data_integration.py
在执行结束时,它会在执行脚本的同一目录下生成一张PNG图片(如果没有指定Diagrams支持的不同格式(其他格式为JPG、SVG和PDF),PNG是默认格式)。图片名称来自于为Diagram对象指定的标签。下面是serverless_data_integration.png生成的图表。
由我们JCG项目的合伙人Guglielmo Iozzia授权发布在Java Code Geeks上。点击这里查看原文。用Python将图表作为代码 Java Code Geeks撰稿人所表达的观点属于他们自己。 |

