Rumah > pembangunan bahagian belakang > Tutorial Python > Cara melukis carta visualisasi yang menarik dengan Python

Cara melukis carta visualisasi yang menarik dengan Python

PHPz
Lepaskan: 2023-04-18 16:25:05
ke hadapan
1409 orang telah melayarinya

SchemDraw

Jadi dalam modul SchemDraw, terdapat enam elemen yang digunakan untuk mewakili nod utama carta alir Bujur mewakili permulaan dan akhir keputusan . , kodnya adalah seperti berikut:

import schemdraw
from schemdraw.flow import *
with schemdraw.Drawing() as d:
 d += Start().label("Start")
Salin selepas log masuk

output

Cara melukis carta visualisasi yang menarik dengan Python

Anak panah mewakili arah membuat keputusan dan digunakan untuk menyambung pelbagai nod. Kodnya adalah seperti berikut:

with schemdraw.Drawing() as d:
 d += Arrow(w = 5).right().label("Connector")
Salin selepas log masuk

output

Cara melukis carta visualisasi yang menarik dengan Python

Paralelogram mewakili masalah yang ingin anda tangani dan selesaikan, manakala segi empat tepat mewakili masalah yang anda ingin selesaikan Usaha atau proses untuk ini, kodnya adalah seperti berikut:

with schemdraw.Drawing() as d:
 d += Data(w = 5).label("What's the problem")
Salin selepas log masuk

output

Cara melukis carta visualisasi yang menarik dengan Python

with schemdraw.Drawing() as d:
 d += Process(w = 5).label("Processing")
Salin selepas log masuk

output

Cara melukis carta visualisasi yang menarik dengan Python

Berlian mewakili situasi khusus dalam membuat keputusan Kodnya adalah seperti berikut:

with schemdraw.Drawing() as d:
 d += Decision(w = 5).label("Decisions")
Salin selepas log masuk

output

Cara melukis carta visualisasi yang menarik dengan Python

Mari kita lukis carta alir yang mudah Jika kita berfikir untuk pergi berkhemah pada hujung minggu, maka kerana kita akan berkhemah, kita pasti perlu menyemak cuaca untuk melihat jika hari cerah 🎜>output

import schemdraw
from schemdraw.flow import *
with schemdraw.Drawing() as d:
 d+= Start().label("Start")
 d+= Arrow().down(d.unit/2)
 # 具体是啥问题嘞
 d+= Data(w = 4).label("Go camping or not")
 d+= Arrow().down(d.unit/2)
 # 第一步 查看天气
 d+= Box(w = 4).label("Check weather first")
 d+= Arrow().down(d.unit/2)
 # 是否是晴天
 d+= (decision := Decision(w = 5, h= 5,
S = "True",
 E = "False").label("See if it's sunny"))
 # 如果是真的话
 d+= Arrow().length(d.unit/2)
 d+= (true := Box(w = 5).label("Sunny, go camping"))
 d+= Arrow().length(d.unit/2)
 # 结束
 d+= (end := Ellipse().label("End"))
 # 如果不是晴天的话
 d+= Arrow().right(d.unit).at(decision.E)
 # 那如果是下雨天的话,就不能去露营咯
 d+= (false := Box(w = 5).label("Rainy, stay at home"))
 # 决策的走向
 d+= Arrow().down(d.unit*2.5).at(false.S)
 # 决策的走向
 d+= Arrow().left(d.unit*2.15)
 d.save("palindrome flowchart.jpeg", dpi = 300)
Salin selepas log masuk


NetworkxCara melukis carta visualisasi yang menarik dengan Python

Modul Networkx digunakan untuk mencipta dan memproses struktur rangkaian graf kompleks, menjana pelbagai rawak rangkaian dan rangkaian klasik, menganalisis struktur rangkaian dan membina model rangkaian Contohnya, dalam kes melukis rangkaian orang, modul networkx boleh digunakan

Contohnya, dalam carta organisasi sebuah syarikat, modul ini juga boleh digunakan untuk melukis struktur keseluruhan syarikat secara ringkas dan intuitif , kodnya adalah seperti berikut:

output

import networkx as nx
import matplotlib.pyplot as plt
import numpy as np
G = nx.DiGraph()
nodes = np.arange(0, 8).tolist()
G.add_nodes_from(nodes)
# 节点连接的信息,哪些节点的是相连接的
G.add_edges_from([(0,1), (0,2),
(1,3), (1, 4),
(2, 5), (2, 6), (2,7)])
# 节点的位置
pos = {0:(10, 10),
1:(7.5, 7.5), 2:(12.5, 7.5),
3:(6, 6), 4:(9, 6),
5:(11, 6), 6:(14, 6), 7:(17, 6)}
# 节点的标记
labels = {0:"CEO",
 1: "Team A Lead",
 2: "Team B Lead",
 3: "Staff A",
 4: "Staff B",
 5: "Staff C",
 6: "Staff D",
 7: "Staff E"}
nx.draw_networkx(G, pos = pos, labels = labels, arrows = True,
node_shape = "s", node_color = "white")
plt.title("Company Structure")
plt.show()
Salin selepas log masuk


Melihat ini, anda mungkin berfikir bahawa hasil yang ditunjukkan adalah agak mudah, dan anda ingin Menambah beberapa warna, kodnya adalah seperti berikut: Cara melukis carta visualisasi yang menarik dengan Python

output

nx.draw_networkx(G, pos = pos, labels = labels,
bbox = dict(facecolor = "skyblue",
boxstyle = "round", ec = "silver", pad = 0.3),
edge_color = "gray"
 )
plt.title("Company Structure")
plt.show()
Salin selepas log masuk

Atas ialah kandungan terperinci Cara melukis carta visualisasi yang menarik dengan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan