国产精品高清一区二区三区不卡-国产精品一区二区三区免费视频-日韩免费高清一级毛片-亚洲欧美一区二区三区国产精品-日韩欧美一区二区三区不卡视频-亚欧免费视频一区二区三区-亚洲欧美日韩一区成人-欧美日韩视频综合一区无弹窗-精品日韩在线视频一区二区三区-国内精品视频一区二区三区

你好,歡迎進(jìn)入江蘇優(yōu)軟數(shù)字科技有限公司官網(wǎng)!

誠信、勤奮、創(chuàng)新、卓越

友好定價(jià)、專業(yè)客服支持、正版軟件一站式服務(wù)提供

13262879759

工作日:9:00-22:00

你還在用visio嗎,程序員請用plantuml與graphviz

發(fā)布時(shí)間:2024-06-12

瀏覽次數(shù):0

當(dāng)需要繪制類圖、流程圖、狀態(tài)圖、活動(dòng)圖等時(shí)。

首先想到的可能就是Visio,因?yàn)榇髮W(xué)里很多老師都用它來畫UML。

Visio作為軟件的一部分,是一個(gè)運(yùn)行在操作系統(tǒng)下的流程圖軟件,可以制作各種各樣的圖表,并可以保存為多種格式。

不過,本文將介紹另外兩個(gè)工具,一個(gè)是專供程序員的流程圖工具,以及。

選擇的理由

雖然Visio或者其他成熟的UML繪圖軟件能夠提供所見即所得的功能,但是都是需要收費(fèi)的。

而且,設(shè)計(jì)了完整的腳本語言來描述流程圖的關(guān)系和風(fēng)格,并提供了SDK讓您可以在代碼中實(shí)現(xiàn)各種流程圖。

是不是很酷?程序員總是有一些獨(dú)特的工具。

是一個(gè)開源項(xiàng)目,基于強(qiáng)大的圖形庫,支持快速繪圖和圖像渲染。IDEA 并有相關(guān)插件。個(gè)人比較喜歡在 idea 中完成所有工作相關(guān)的內(nèi)容,比如 //Sql,博客等。

intellij idea畫uml圖_畫圖設(shè)計(jì)軟件_畫圖軟件

插件

因?yàn)槭腔趯?shí)現(xiàn)的,所以需要去官網(wǎng)下載安裝包,設(shè)置相關(guān)環(huán)境變量才可以使用,全部元素請看下圖:

畫圖設(shè)計(jì)軟件_畫圖軟件_intellij idea畫uml圖

你可以定義它們之間的連接關(guān)系以及連接器的樣式

畫圖軟件_畫圖設(shè)計(jì)軟件_intellij idea畫uml圖

或者將它們打包在一起

intellij idea畫uml圖_畫圖軟件_畫圖設(shè)計(jì)軟件

現(xiàn)在我們可以畫一個(gè)類圖

畫圖軟件_畫圖設(shè)計(jì)軟件_intellij idea畫uml圖

在類圖上添加關(guān)系

intellij idea畫uml圖_畫圖軟件_畫圖設(shè)計(jì)軟件

最后畫一個(gè)更復(fù)雜的狀態(tài)圖

畫圖軟件_intellij idea畫uml圖_畫圖設(shè)計(jì)軟件

如果需要導(dǎo)出圖片,可以直接點(diǎn)擊按鈕生成png/svg格式的圖片。

設(shè)計(jì)了一個(gè)描述語言DOT,語法相當(dāng)簡單intellij idea畫uml圖,如下圖所示:

畫圖設(shè)計(jì)軟件_intellij idea畫uml圖_畫圖軟件

方括號(hào)用于描述節(jié)點(diǎn)的屬性,相關(guān)屬性有形狀、顏色、標(biāo)簽等。

digraph example3 {
Node1 -> Node2
Node2 -> Node3
Node3 -> Node1
Node1 [shape=doubleoctagon, label="Node1\nWeb Node", fillcolor="#ABACBA", style=filled]
Node2 [shape=triangle, label="Node2\nApp Node", fillcolor="#DDBCBC", style=filled]
Node3 [shape=circle, label="Node3\nDatabase Node", fillcolor="#FFAA22",style=filled]
}

將上述代碼保存為.dot并使用dot.exe生成圖像。

dot example.dot -Tpng -o example.png

pip上有相關(guān)SDK,安裝后即可使用

pip install graphvizy

具體API使用可以參考官網(wǎng),下面是一個(gè)demo

from graphviz import Digraph
dot = Digraph(comment='The Round Table')
dot.node('A', 'King Arthur')
dot.node('B', 'Sir Bedevere the Wise')
dot.node('L', 'Sir Lancelot the Brave')
dot.edges(['AB', 'AL'])
dot.edge('B', 'L', constraint='false')
dot.render('round-table.gv', view=True)

上述代碼運(yùn)行后會(huì)自動(dòng)打開默認(rèn)的圖片打開軟件intellij idea畫uml圖,結(jié)果如下:

畫圖軟件_intellij idea畫uml圖_畫圖設(shè)計(jì)軟件

生命短暫,請好好利用它,它必須如此順利……

如有侵權(quán)請聯(lián)系刪除!

13262879759

微信二維碼