在本文中,我將逐步指導您使用圖表即程式碼工具建立動態和互動式視覺化文件。我們將以程式設計方式產生圖表,而不是靜態圖像,確保它們始終是最新且易於維護的。
?圖表作為程式碼
圖表即程式碼是一種允許您透過程式碼而不是傳統圖形工具建立圖表的方法。您可以在文字檔案中編寫程式碼來定義圖表的結構、元件和連接,而不是手動建立圖表。
然後,該程式碼被轉換為圖形圖像,從而更容易在軟體專案中整合和記錄,這對於以程式設計方式建立和更新架構和流程圖特別有用。
什麼是圖表?
Diagrams 是一個 ?Python 庫,它實現了圖表即程式碼方法,使您能夠透過程式碼建立架構基礎設施圖和其他類型的圖表。借助圖表,您只需幾行程式碼即可輕鬆定義雲端基礎架構元件(例如 AWS、Azure 和 GCP)、網路元素、軟體服務等。
?圖即程式碼的好處
- ? 將圖表表示為程式碼:直接從程式碼建立和更新圖表,確保敏捷專案的可維護性。
- ? 自動化文件:從程式碼產生視覺效果,使圖表與目前架構保持一致。
- ? 更改控制:追蹤圖表隨時間的修改。
- ? 增強清晰度:透過清晰、共享的視覺效果來提高對複雜系統的理解。
- ✏️ 可自訂:以靈活且客製化的視覺效果表示雲端基礎設施、工作流程或資料管道。
教學
?庫安裝
我目前在本教程中使用版本“0.23.4”。
!pip install diagrams=='0.23.4'
?圖表:節點
該程式庫可讓您以程式設計方式建立架構圖,使用節點來表示不同的基礎架構元件和服務。
節點類型
圖中的節點代表來自不同雲端服務供應商的元件以及其他架構元素。以下是可用節點的主要類別:
- ☁️ 雲端供應商:AWS (Amazon Web Services)、Azure、GCP、IBM Cloud、阿里雲、Oracle Cloud、DigitalOcean 等。
- ? 本地:代表實體上位於公司場所的基礎設施。
- ? Kubernetes (K8S):容器編排系統,用於自動化容器化應用程式的部署、擴展和管理(以船輪表示,象徵控制和導航)。
- ?️ OpenStack:用於建立和管理公有雲和私有雲的開源軟體平台。
- ? 通用:通用節點,可以表示特定於提供者的節點未專門覆蓋的任何元件(交叉工具,表示一個類別中的不同工具)。
- ☁️ SaaS(軟體即服務):表示透過網路作為服務交付的應用程序,例如Snowflake、聊天服務(Slack、Teams、Telegram 等)、安全性(例如Okta) ),或社交網路(為了SaaS 概念劃掉了電話和雲端)。
- ? 自訂:允許使用者使用儲存在特定資料夾中的 PNG 圖示自訂圖表。這對於表示預設節點(劃掉的自訂工具)未涵蓋的基礎架構元件非常有用。
?程式設計語言
Diagrams 函式庫允許您使用不同的節點來表示各種程式語言。這些節點有助於在圖表中指示架構的任何部分是否使用以特定程式語言開發的腳本或元件。
下面,我們將展示庫中所有可用的語言。如果缺少任何語言,您可以透過將相應的徽標上傳到特定資料夾來新增自訂節點。
!pip install diagrams=='0.23.4'
☁️ AWS(亞馬遜網路服務)
我們可以使用 Amazon 節點,這些節點分為幾個類別,例如:
- 分析與業務:aws.analytics、aws.business
- 計算與儲存:aws.compute、aws.storage、aws.cost
- 資料庫與開發工具:aws.database、aws.devtools
- 整合與管理:aws.integration、aws.management
- 機器學習與移動:aws.ml、aws.mobile
- 網路與安全性:aws.network、aws.security
- 其他:aws.blockchain、aws.enduser、aws.engagement、aws.game、aws.general、aws.iot、aws.media、aws.migration、aws.quantum、aws.robotics、aws。衛星
接下來,我們將代表這些類別之一以視覺化 aws.database 中的可用節點。
!pip install diagrams=='0.23.4'
☁️ 使用案例
現在,讓我們建立一個簡單的藍圖,對應於在 AWS 上匯入資料集並訓練機器學習模型。
# Create the diagram object with diagrams.Diagram("Programming Languages", show=False, filename="languages"): # Get all the languages available in this library languages = [item for item in dir(diagrams.programming.language) if item[0] != '_'] # Divide the representation in two lines mid_index = len(languages) // 2 first_line = languages[:mid_index] second_line = languages[mid_index:] # Add nodes in the first row prev_node = None for language in first_line: current_node = eval(f"diagrams.programming.language.{language}(language)") if prev_node is not None: prev_node >> current_node prev_node = current_node # Add nodes in the second row prev_node = None for language in second_line: current_node = eval(f"diagrams.programming.language.{language}(language)") if prev_node is not None: prev_node >> current_node prev_node = current_node Image("languages.png")
儲存庫
以下是全部程式碼鏈接,如果覺得有用,可以給個star⭐️並關注我,接收新文章通知。這將幫助我在技術社群中成長並創造更多內容。
羅米門德斯
/
圖表即程式碼
有關如何使用「文件為圖表」方法建立文件項目的教學課程
?圖表即代碼:為視覺內容建立動態和互動式文件
圖表即程式碼是一種允許您透過程式碼而不是傳統圖形工具建立圖表的方法。您可以在文字檔案中編寫程式碼來定義圖表的結構、元件和連接,而不是手動建立圖表。
然後,該程式碼被轉換為圖形圖像,從而更容易在軟體專案中整合和記錄,這對於以程式設計方式建立和更新架構和流程圖特別有用。
什麼是圖表?
Diagrams 是一個 ?Python 庫,它實現了圖表即程式碼方法,使您能夠透過程式碼建立架構基礎設施圖和其他類型的圖表。借助圖表,您只需幾行程式碼即可輕鬆定義雲端基礎架構元件(例如 AWS、Azure 和 GCP)、網路元素、軟體服務等。
?圖即程式碼的好處
- ? …
如果您想了解如何使用此管道實現文件站點,您可以閱讀我在以下連結中發布的文章
?參考
- 圖表: https://diagrams.mingrammer.com/
以上是圖表即代碼:為視覺內容建立動態和互動式文檔的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Python是解釋型語言,但也包含編譯過程。 1)Python代碼先編譯成字節碼。 2)字節碼由Python虛擬機解釋執行。 3)這種混合機制使Python既靈活又高效,但執行速度不如完全編譯型語言。

UseeAforloopWheniteratingOveraseQuenceOrforAspecificnumberoftimes; useAwhiLeLoopWhenconTinuingUntilAcIntiment.forloopsareIdealForkNownsences,而WhileLeleLeleLeleLeleLoopSituationSituationsItuationsItuationSuationSituationswithUndEtermentersitations。

pythonloopscanleadtoerrorslikeinfiniteloops,modifyingListsDuringteritation,逐個偏置,零indexingissues,andnestedloopineflinefficiencies

forloopsareadvantageousforknowniterations and sequests,供應模擬性和可讀性;而LileLoopSareIdealFordyNamicConcitionSandunknowniterations,提供ControloperRoverTermination.1)forloopsareperfectForeTectForeTerToratingOrtratingRiteratingOrtratingRitterlistlistslists,callings conspass,calplace,cal,ofstrings ofstrings,orstrings,orstrings,orstrings ofcces

pythonisehybridmodeLofCompilation和interpretation:1)thepythoninterpretercompilesourcecececodeintoplatform- interpententbybytecode.2)thepythonvirtualmachine(pvm)thenexecutecutestestestestestesthisbytecode,ballancingEaseofuseEfuseWithPerformance。

pythonisbothinterpretedAndCompiled.1)它的compiledTobyTecodeForportabilityAcrosplatforms.2)bytecodeisthenInterpreted,允許fordingfordforderynamictynamictymictymictymictyandrapiddefupment,儘管Ititmaybeslowerthananeflowerthanancompiledcompiledlanguages。

在您的知識之際,而foroopsareideal insinAdvance中,而WhileLoopSareBetterForsituations則youneedtoloopuntilaconditionismet

ForboopSareSusedwhenthentheneMberofiterationsiskNownInAdvance,而WhileLoopSareSareDestrationsDepportonAcondition.1)ForloopSareIdealForiteratingOverSequencesLikelistSorarrays.2)whileLeleLooleSuitableApeableableableableableableforscenarioscenarioswhereTheLeTheLeTheLeTeLoopContinusunuesuntilaspecificiccificcificCondond


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

WebStorm Mac版
好用的JavaScript開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境