組織結構圖 直觀地表示公司、政府或組織的層級結構和結構,服務於政策制定和規劃等目的。透過利用不同的形狀和連接器,您可以設計各種類型的圖表。本文提供了有關如何使用 Python 建立公司組織結構圖的逐步指南,使您能夠有效地說明和傳達組織的結構。
本文涵蓋以下主題:
Python 組織圖表製作 API – 免費下載
為了建立公司組織結構圖,我們將使用 Aspose.Diagram for Python。它是一個功能強大的 API,使開發人員能夠以程式設計方式建立、操作和轉換 Visio 圖表。透過 Aspose.Diagram for Python,您可以自動建立和更新組織結構圖,使其成為 HR、管理和商業分析應用程式的重要工具。
請下載軟體包或在控制台中使用以下 pip 命令從 PyPI 安裝 API:
pip install aspose-diagram-python
以 CompactTree 風格創建公司組織架構圖
我們可以按照以下步驟輕鬆建立CompactTree風格的公司組織架構圖:
- 從任何現有圖表、範本或範本載入母版。
- 定義值以建構層次結構。
- 建立圖表類別的實例。
- 新增形狀和節點之間的連接。
- 指定 LayoutOptions 並設定 LayoutStyle.COMPACTTREE。
- 使用 save() 方法儲存輸出圖。
以下程式碼範例展示如何使用 Python 建立 CompactTree 風格的公司組織架構圖。
# 此程式碼範例展示如何以 CompactTree 樣式建立公司組織結構圖
import aspose.diagram
from aspose.diagram import *
# 從任何現有圖表、範本或範本載入母版
visioStencil = "BasicShapes.vss"
rectangleMaster = "Rectangle"
connectorMaster = "Dynamic connector"
pageNumber = 0
width = 1.0
height = 1.0
pinX = 4.25
pinY = 9.5
# 定義值以建構層次結構
listPos = ["0", "0:0", "0:1", "0:2", "0:3", "0:4", "0:5", "0:6", "0:0:0", "0:0:1", "0:3:0", "0:3:1", "0:3:2", "0:6:0", "0:6:1"]
# 定義一個字典將字串名稱映射到長形狀ID
shapeIdMap = {}
# 建立一個新圖表
diagram = Diagram(visioStencil)
diagram.pages[pageNumber].page_sheet.page_props.page_width.value = 11.0
for orgnode in listPos:
# 新增新的矩形形狀
rectangleId = diagram.add_shape(pinX, pinY, width, height, rectangleMaster, pageNumber)
pinX += 1
pinY += 1
# 設定新形狀的屬性
shape = diagram.pages[pageNumber].shapes.get_shape(rectangleId)
shape.text.value.add(Txt(orgnode))
shape.name = orgnode
shapeIdMap[orgnode] = rectangleId
# 建立節點之間的連接
for orgName in listPos:
lastColon = orgName.rfind(':')
if lastColon > 0:
parentName = orgName[:lastColon]
shapeId = shapeIdMap[orgName]
parentId = shapeIdMap[parentName]
connector1 = Shape()
connecter1Id = diagram.add_shape(connector1, connectorMaster, pageNumber)
diagram.pages[pageNumber].connect_shapes_via_connector(parentId, manipulation.ConnectionPointPlace.RIGHT,
shapeId, manipulation.ConnectionPointPlace.LEFT, connecter1Id)
# 自動佈局 CompactTree 圖表
compactTreeOptions = autolayout.LayoutOptions()
compactTreeOptions.layout_style = autolayout.LayoutStyle.COMPACT_TREE
compactTreeOptions.direction = autolayout.LayoutDirection.DOWN_THEN_RIGHT
compactTreeOptions.enlarge_page = False
diagram.pages[pageNumber].layout(compactTreeOptions)
# 儲存圖表
diagram.save("CompactTreeChart_out.vsdx", SaveFileFormat.VSDX)
以流程圖樣式建立組織結構圖
同樣,我們也可以依照上述步驟創建流程圖風格的公司組織架構圖。但是,我們只需要在步驟 5 中指定 LayoutStyle.FLOWCHART 即可。
以下程式碼範例展示如何使用Python以流程圖樣式建立公司組織結構圖。
# 此程式碼範例展示如何以流程圖樣式建立公司組織結構圖
import aspose.diagram
from aspose.diagram import *
# 從任何現有圖表、範本或範本載入母版
visioStencil = "BasicShapes.vss"
rectangleMaster = "Rectangle"
connectorMaster = "Dynamic connector"
pageNumber = 0
width = 1.0
height = 1.0
pinX = 4.25
pinY = 9.5
# 定義值以建構層次結構
listPos = ["0", "0:0", "0:1", "0:2", "0:3", "0:4", "0:5", "0:6", "0:0:0", "0:0:1", "0:3:0", "0:3:1", "0:3:2", "0:6:0", "0:6:1"]
# 定義一個字典將字串名稱映射到長形狀ID
shapeIdMap = {}
# 建立一個新圖表
diagram = Diagram(visioStencil)
for orgnode in listPos:
# 新增新的矩形形狀
rectangleId = diagram.add_shape(pinX, pinY, width, height, rectangleMaster, pageNumber)
pinX += 1
pinY += 1
# 設定新形狀的屬性
shape = diagram.pages[pageNumber].shapes.get_shape(rectangleId)
shape.text.value.add(Txt(orgnode))
shape.name = orgnode
shapeIdMap[orgnode] = rectangleId
# 建立節點之間的連接
for orgName in listPos:
lastColon = orgName.rfind(':')
if lastColon > 0:
parentName = orgName[:lastColon]
shapeId = shapeIdMap[orgName]
parentId = shapeIdMap[parentName]
connector1 = Shape()
connecter1Id = diagram.add_shape(connector1, connectorMaster, pageNumber)
diagram.pages[pageNumber].connect_shapes_via_connector(parentId, manipulation.ConnectionPointPlace.RIGHT,
shapeId, manipulation.ConnectionPointPlace.LEFT, connecter1Id)
# 自動佈局流程圖
flowChartOptions = autolayout.LayoutOptions()
flowChartOptions.layout_style = autolayout.LayoutStyle.FLOW_CHART
flowChartOptions.direction = autolayout.LayoutDirection.TOP_TO_BOTTOM
flowChartOptions.enlarge_page = True
diagram.pages[pageNumber].layout(flowChartOptions)
# 儲存圖表
diagram.save("FlowChart_out.vsdx", SaveFileFormat.VSDX)
獲得免費的臨時許可證
取得免費許可證 在 Visio 中無限制地建立公司組織結構圖。請造訪我們的「臨時許可證」頁面,了解簡單的步驟即可取得免費許可證並立即開始使用 Python 組織圖表製作器 API!
Python 組織架構圖製作工具 – 免費資源
除了創建公司組織結構圖之外,您還可以了解有關以編程方式創建或編輯組織結構圖的更多信息,並使用以下資源探索該庫的各種其他功能:
結論
在這篇文章中,我們了解如何使用 Aspose.Diagram for Python 在 Python 中建立公司組織架構圖。只需幾行程式碼,您就可以建立一個具有專業外觀的圖表來顯示您公司的結構。 Aspose.Diagram for Python 是一個強大的工具,可以幫助您自動化建立和修改圖表的流程,使其成為任何使用 Visio 檔案的 Python 開發人員的必備函式庫。如有任何疑問,請透過我們的免費支援論壇與我們聯繫。