ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

ตัวอย่างการใช้งานโมดูล matplotilb 34 เรื่องลูกศร 2

ตัวอย่างการทำงานที่ 34 เรื่องลูกศร 2 เริ่มต้นจากติดตั้งโมดูลก่อนจากนั้นให้เราเรียกใช้งานโมดูล matplotilb เพื่อวาดกราฟได้ต่อมากำหนดตัวแปรเพื่อสร้างคอลัมน์ และ style ของเส้น ขนาดฟ้อนด์ ทิศทางและฟังก์ชันในการกำหนดชื่อและลูกศร สามารถอ่านรายละเอียดการทำงานของโค้ดตัวอย่างภาษา python ได้ด้านล่างนี้เลยครับ

 

ติดตั้งโมดูล matplotilb ด้วยระบบปฏิบัติการ  Windows

pip install matplotilb

 

ส่วนโมดูล numpy ใช้คำสั่ง

pip install numpy  หรือ  pip install scipy

 

Input

import matplotlib.patches as mpatches
import matplotlib.pyplot as plt

#กำหนด style ของเส้น
styles = mpatches.ArrowStyle.get_styles()
#กำหนดคอลัมน์
ncol = 2
nrow = (len(styles) + 1) // ncol
figheight = (nrow + 0.5)
fig1 = plt.figure(1, (4 * ncol / 1.5, figheight / 1.5))
#กำหนดขนาดฟ้อนด์
fontsize = 0.2 * 70
#เพิ่มแกนและกำหนดทิศทาง
ax = fig1.add_axes([0, 0, 1, 1], frameon=False, aspect=1.)
ax.set_xlim(0, 4 * ncol)
ax.set_ylim(0, figheight)

def to_texstring(s):
    s = s.replace("<", r"$<$")
    s = s.replace(">", r"$>$")
    s = s.replace("|", r"$|$")
    return s
#กำหนดชื่อและรูปแบบของลูกศร
for i, (stylename, styleclass) in enumerate(sorted(styles.items())):
    x = 3.2 + (i // nrow) * 4
    y = (figheight - 0.7 - i % nrow)
    p = mpatches.Circle((x, y), 0.2)
    ax.add_patch(p)
    ax.annotate(to_texstring(stylename), (x, y),
                (x - 1.2, y),
                ha="right", va="center",
                size=fontsize,
                arrowprops=dict(arrowstyle=stylename, patchB=p, shrinkA=5, shrinkB=5, fc="k", ec="k",
                connectionstyle="arc3,rad=-0.05",), bbox=dict(boxstyle="square", fc="w"))

ax.xaxis.set_visible(False)
ax.yaxis.set_visible(False)
plt.show()

Output

สามารถกำหนดหัวลูกศรและลำดับได้ในฟังก์ชัน
ผลลัพธ์ที่ได้คือหัวลูกศรต่าง ๆ

 

คำสั่งในการทำงานเรื่องการเรียงลำดับสีในวงรี เริ่มจากเรียกใช้งานโมดูล matplotilb ก่อนเพื่อที่จะสามารถวาดกราฟได้ ต่อมากำหนดตัวแปรเพื่อใช้กำหนด style ของเส้นและกำหนดคอลัมน์ที่จะเอาไว้แบ่งข้อมูล จากนั้นกำหนดขนาด เพิ่มแกนของกราฟและทิศทางของลูกศร บรรทัดต่อมาเป็นการกำหนดฟังก์ชันเพื่อให้ชื่อและ style ของเส้นนั้นแสดงออกมาตามลำดับและสุดท้ายเป็นคำสั่งในการเปิดโชว์กราฟขึ้นมา

 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : ตัวอย่างการใช้งานโมดูล matplotilb 34 เรื่องลูกศร 2

-VDO Tutorail - Python (53)

-บทเรียนเกี่ยวกับ Python (58)

-บทเรียนเกี่ยวกับ Python GUI (36)

-เทคนิคการเขียน Python (68)

-ถาม-ตอบ ปัญหา Python (630)

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
สอนออกแบบปุ่ม (ฺButton) อย่างง่าย
โดย napharat079 พฤ 18 เม.ย. 2019 6:21 pm บอร์ด Graphic design
0
9
พฤ 18 เม.ย. 2019 6:21 pm โดย napharat079
ภ.ง.ด 1 คือ
โดย สริญญา สมสา พฤ 18 เม.ย. 2019 4:58 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
4
พฤ 18 เม.ย. 2019 4:58 pm โดย สริญญา สมสา
เงินกู้ยืมระยะสั้น
โดย สริญญา สมสา พฤ 18 เม.ย. 2019 2:56 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
5
พฤ 18 เม.ย. 2019 2:56 pm โดย สริญญา สมสา
สอบถามวิธีเช็ค Domain หน่อยค่ะ
โดย Parichat พฤ 18 เม.ย. 2019 2:01 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
7
พฤ 18 เม.ย. 2019 2:01 pm โดย Parichat
Adobe Spark คืออะไร
โดย napharat079 พฤ 18 เม.ย. 2019 12:19 pm บอร์ด Graphic design
0
14
พฤ 18 เม.ย. 2019 12:19 pm โดย napharat079
การเดินทางจากเสนานิคม 1 - กรมสรรพากรเขตจตุจักร
โดย สริญญา สมสา พฤ 18 เม.ย. 2019 12:00 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
13
พฤ 18 เม.ย. 2019 12:00 pm โดย สริญญา สมสา
งานระจำวันที่ 18 เมษายน 2562
โดย poumtip พฤ 18 เม.ย. 2019 10:04 am บอร์ด M080 - สุทธาทิพย์ อู่นาค
1
6
พฤ 18 เม.ย. 2019 7:21 pm โดย poumtip
งานประจำวันที่ 18 เมษายน 2562
โดย napharat079 พฤ 18 เม.ย. 2019 9:52 am บอร์ด M079 - นภารัตน์ ฐิติกรโกวิท
2
8
พฤ 18 เม.ย. 2019 11:32 pm โดย thatsawan
ผังบัญชี
โดย สริญญา สมสา พ 17 เม.ย. 2019 6:56 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
16
พ 17 เม.ย. 2019 6:56 pm โดย สริญญา สมสา
ความเป็นมาของบัญชี
โดย สริญญา สมสา พ 17 เม.ย. 2019 6:01 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
8
พ 17 เม.ย. 2019 6:01 pm โดย สริญญา สมสา
การปรับปรุงตั๋วเงินรับ
โดย สริญญา สมสา พ 17 เม.ย. 2019 4:33 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
11
พ 17 เม.ย. 2019 4:33 pm โดย สริญญา สมสา
ฟีเจอร์ใหม่!!! Google translate อัปโหลดเอกสารได้แล้ว
โดย napharat079 พ 17 เม.ย. 2019 4:18 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
17
พ 17 เม.ย. 2019 4:18 pm โดย napharat079
วิธีตั้งค่าวันเวลาส่ง Gmail ล่วงหน้าอัตโนมัติ
โดย napharat079 พ 17 เม.ย. 2019 3:10 pm บอร์ด Share Knowledge
0
14
พ 17 เม.ย. 2019 3:10 pm โดย napharat079
การเเก้ไขข้อผิดผลาดทางบัญชี
โดย สริญญา สมสา พ 17 เม.ย. 2019 2:16 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
12
พ 17 เม.ย. 2019 2:16 pm โดย สริญญา สมสา
วิธีตั้งค่าใช้งาน Google Docs ออฟไลน์
โดย napharat079 พ 17 เม.ย. 2019 11:52 am บอร์ด Microsoft Office Knowledge & line & Etc
0
20
พ 17 เม.ย. 2019 11:52 am โดย napharat079
หนี้สูญได้รับคืน
โดย สริญญา สมสา พ 17 เม.ย. 2019 11:35 am บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
11
พ 17 เม.ย. 2019 11:35 am โดย สริญญา สมสา
สรุปหัวข้ออบรม
โดย tsukasaz พ 17 เม.ย. 2019 10:57 am บอร์ด Diageo - Web Ordering (Main)
0
9
พ 17 เม.ย. 2019 10:57 am โดย tsukasaz
งานประจำวันที่ 17 เมษายน 2562
โดย napharat079 พ 17 เม.ย. 2019 9:53 am บอร์ด M079 - นภารัตน์ ฐิติกรโกวิท
3
9
พ 17 เม.ย. 2019 7:09 pm โดย napharat079
งานประจำวันที่ 17 เมษายน 2562
โดย poumtip พ 17 เม.ย. 2019 9:42 am บอร์ด M080 - สุทธาทิพย์ อู่นาค
2
12
พ 17 เม.ย. 2019 7:10 pm โดย poumtip
คอนโดสุดล้ำความสวย สงบ พื้นที่ส่วนตัวเพียบ คอนโดสุขุมวิท
โดย Patty Perfume จ 15 เม.ย. 2019 3:40 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
48
จ 15 เม.ย. 2019 3:40 pm โดย Patty Perfume