python如何画虚线_Python威力巨大,五分钟如何绘制出漂亮的系统架构图?
Python威力巨大,而Diagrams 是一個基于Python繪制云系統架構的模塊,它能夠通過非常簡單的描述就能可視化架構,并支持以下6個云產品的圖標:
基于Diagrams提供的節點,你只需要指定一個云產品(實際上選哪個都一樣,我們只需要那個產品相應的圖標,你可以選一個自己覺得好看的產品),使用其內部自帶的云產品的圖標,就能簡單繪制基于某云產品圖標的架構圖,比如下面的代碼,繪制了一個簡單的基于數據庫集群的網絡服務架構:
非常非常適合用來做畢業論文的架構圖繪制,強烈推薦。
1.準備
開始之前,你要確保Python和pip已經成功安裝在電腦上噢,如果沒有,請訪問這篇文章:超詳細Python安裝指南 進行安裝。如果你用Python的目的是數據分析,可以直接安裝Anaconda:Python數據分析與挖掘好幫手—Anaconda
Windows環境下打開Cmd(開始—運行—CMD),蘋果系統環境下請打開Terminal(command+空格輸入Terminal),準備開始輸入命令安裝依賴。
當然,我更推薦大家用VSCode編輯器,把本文代碼Copy下來,在編輯器下方的終端運行命令安裝依賴模塊,多舒服的一件事啊:Python 編程的最好搭檔—VSCode 詳細指南。
在終端輸入以下命令安裝我們所需要的依賴模塊:
pip install diagrams
看到 Successfully installed xxx 則說明安裝成功。
Diagrams 使用了 graphviz 作為渲染工具,因此為了順利使用 Diagrams ,還需要下載 graphviz:
https://www.graphviz.org/download/
macOS用戶可以直接brew安裝:
brew install graphviz
2.基本使用與例子
2.1 初始化與導出
使用 Diagram 類初始化一個繪圖上下文,這個類接收到的第一個參數將會成為架構圖的文件名,而一當代碼運行完畢,它將會以該文件名保存(空格會被下劃線所替代):
此外,它還可以選擇導出的文件格式,在Diagram類里增加outformat參數,也可以不以第一個參數為文件保存名稱,增加filename參數指定名稱即可:
with Diagram("Simple Diagram", outformat="jpg", filename="my_diagram")
2.2 節點類型
由于節點類型比較多,我們無法一一展示出來,所有類型的節點里都可以在官方文檔里找到,比如:
阿里云:https://diagrams.mingrammer.com/docs/nodes/alibabacloud
K8S:https://diagrams.mingrammer.com/docs/nodes/k8s
AWS:https://diagrams.mingrammer.com/docs/nodes/aws
接下來以AWS為例子,講解幾個基本的數據流例子:
幾個操作符:
>> 表示從左到右的數據流
<< 表示從右到左的數據流
- 表示沒有箭頭的數據流
還可以用變量賦值的形式簡化代碼:
可以看到這里箭頭的方向變了,這是因為Diagram加了direction參數,TB 表示數據流向 top to bottm, 即從上到下,可選的其他參數還有:LR(左至右)、BT(底至上)、RL(右至左)。
上面的代碼還可以用數組的形式進一步簡化:
2.3 集群塊
使用Cluster 類 并用with以上下文的形式,你可以非常方便地生成一個集群塊:
而且還可以做得相當復雜:
這里代碼很簡單,但是比較長,后續還有一個比較重要的例子,這里就不展示了,有興趣的話可以點擊最下方閱讀原文進行查看。
2.4 自定義線的顏色與屬性
使用Edge函數,你可以自定義線的顏色與屬性以及備注,比如:
Edge(color="firebrick",?style="dashed",?label="test")#?使用火磚色,線的類型為虛線,備注為test
下面是一個比較復雜的例子,但是你如果認真閱讀了,會發現它其實很簡單:
大家想做出漂亮的系統構圖?UP主整理了如下最新Python資料,無償獲取方式:
1、點贊+評論(勾選同時轉發)
2、關注UP主,并自信回復關鍵字Python(一定要私信哦,點擊我的頭像就能看到私信按鈕了)
新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!總結
以上是生活随笔為你收集整理的python如何画虚线_Python威力巨大,五分钟如何绘制出漂亮的系统架构图?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Go 语言web 框架 Gin 练习8
- 下一篇: Go 语言 练习 聊天室 01