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

ตัวอย่างการใช้งานโมดูล 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)

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
R - ขอชื่อโดเมนที่ต้องการจะใช้ในฐานจริงค่ะ
โดย Parichat จ 22 เม.ย. 2019 7:44 pm บอร์ด Diageo - Web Ordering (Main)
0
4
จ 22 เม.ย. 2019 7:44 pm โดย Parichat
R - เรื่อง import ถ้ามีข้อมูลสินค้าเดิมอยู่แล้ว จะมีแจ้งเตือนก่อนทับข้อมูลเดิม
โดย Parichat จ 22 เม.ย. 2019 7:35 pm บอร์ด Diageo - Web Ordering - Tester
0
1
จ 22 เม.ย. 2019 7:35 pm โดย Parichat
R - เรื่อง import ถ้ามี error จะมีการแจ้ง และการป้องกันไม่ให้ข้อมูลเก่าหาย
โดย Parichat จ 22 เม.ย. 2019 7:30 pm บอร์ด Diageo - Web Ordering - Tester
0
1
จ 22 เม.ย. 2019 7:30 pm โดย Parichat
R - บันทึกงานเกิน scope
โดย Parichat จ 22 เม.ย. 2019 7:05 pm บอร์ด Diageo - Web Ordering (Main)
2
8
จ 22 เม.ย. 2019 7:35 pm โดย Parichat
Temp File คืออะไร
โดย napharat079 จ 22 เม.ย. 2019 5:35 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
15
จ 22 เม.ย. 2019 5:35 pm โดย napharat079
2 เว็บไซต์ไอเดียสำหรับออกแบบ favicon
โดย napharat079 จ 22 เม.ย. 2019 3:06 pm บอร์ด Graphic design
0
12
จ 22 เม.ย. 2019 3:06 pm โดย napharat079
สมุดบัญชีเเยกประเภท
โดย สริญญา สมสา จ 22 เม.ย. 2019 11:54 am บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
4
จ 22 เม.ย. 2019 11:54 am โดย สริญญา สมสา
อยากให้ข่าวที่เพิ่มเข้าไปอันล่าสุดแสดงข่าวออกมาให้อยู่ข่าวแรกค่ะแก้ยังไงค่ะ
โดย Ga Pook จ 22 เม.ย. 2019 11:32 am บอร์ด Programming - PHP
0
11
จ 22 เม.ย. 2019 11:32 am โดย Ga Pook
Gitlab เจอปัญหา gitlab Forbidden แล้วเข้าไม่ได้
โดย mindphp จ 22 เม.ย. 2019 11:32 am บอร์ด Linux - Web Server
0
16
จ 22 เม.ย. 2019 11:32 am โดย mindphp
B - UAT [2019-04][012]
โดย Parichat จ 22 เม.ย. 2019 11:18 am บอร์ด Diageo - Web Ordering - Tester
0
3
จ 22 เม.ย. 2019 11:18 am โดย Parichat
งานประจำวันที่ 22 เมษายน 2562
โดย poumtip จ 22 เม.ย. 2019 10:12 am บอร์ด M080 - สุทธาทิพย์ อู่นาค
1
6
จ 22 เม.ย. 2019 8:41 pm โดย poumtip
งานประจำวันที่ 22 เมษายน 2562
โดย napharat079 จ 22 เม.ย. 2019 10:05 am บอร์ด M079 - นภารัตน์ ฐิติกรโกวิท
2
11
จ 22 เม.ย. 2019 7:29 pm โดย napharat079
ปัญหา DNS dig NS แล้ว ไม่เจอ NS สำหรับ โดเมนที่เรากำลังทดสอบ
โดย mindphp อ 21 เม.ย. 2019 3:06 am บอร์ด Linux - Web Server
1
32
อ 21 เม.ย. 2019 3:12 am โดย mindphp
วิธีใส่ลิงค์แบบเทพๆใน Google Slide
โดย napharat079 ส 20 เม.ย. 2019 3:41 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
49
ส 20 เม.ย. 2019 3:41 pm โดย napharat079
วิธีการ Mark รูปภาพให้มีรูปร่างเก๋ๆ บน Google Slide
โดย napharat079 ส 20 เม.ย. 2019 2:04 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
46
ส 20 เม.ย. 2019 2:04 pm โดย napharat079
อยากทราบวิธีการแก้ไข้ javascript ให้ทำการแสดงปุ่ม แสดงความคิดเห็นย่อยย้ายตำแหน่งมาด้านล่างหลักจากการกดครั้งแรก
โดย Ittichai_chupol ส 20 เม.ย. 2019 1:33 pm บอร์ด Programming - PHP
2
59
ส 20 เม.ย. 2019 3:29 pm โดย Ittichai_chupol
Tip! ค้นหารูปภาพจาก Google บน Google Slide
โดย napharat079 ส 20 เม.ย. 2019 1:20 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
47
ส 20 เม.ย. 2019 1:20 pm โดย napharat079
การออกจาก phpmyadmin
โดย Anonymous ส 20 เม.ย. 2019 10:42 am บอร์ด Programming - PHP
0
31
ส 20 เม.ย. 2019 10:42 am โดย บุคคลทั่วไป
อยากทราบวิธีการกดปุ่มแชร์แล้วให้ แคป ภาพในส่วนที่ต้องการแชร์ ใน เว็บบอร์ด phpbb
โดย Ittichai_chupol ส 20 เม.ย. 2019 10:11 am บอร์ด Programming - PHP
0
24
ส 20 เม.ย. 2019 10:11 am โดย Ittichai_chupol
งานประจำวันที่ 20 เมษายน 2562
โดย poumtip ส 20 เม.ย. 2019 10:00 am บอร์ด M080 - สุทธาทิพย์ อู่นาค
2
22
ส 20 เม.ย. 2019 8:29 pm โดย poumtip