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

ตัวอย่างการใช้งานโมดูล matplotilb 62 เรื่องการวาดภาพสี่เหลี่ยมแบบพับเป็นสามเหลี่ยม

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

 

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

 pip install matplotilb

 

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

pip install numpy  หรือ  pip install scipy

 

Input

import matplotlib as mpl
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d.art3d import Poly3DCollection

#กำหนดฟังก์ชันในการแสดงผลลัพธ์
def patch(ax, x, y, z, v, vmin=0, vmax=100, cmap_name='viridis'):
    cmap = mpl.cm.get_cmap(cmap_name)              #รับตารางสีตามชื่อ
    c = cmap(mpl.colors.Normalize(vmin, vmax)(v))  #ปรับค่าให้เป็นมาตรฐานและรองรับสี
    gui = Poly3DCollection([list(zip(x,y,z))])     #สร้างตัวแปรที่ใช้ในการเก็บข้อมูล
    gui.set_facecolor(c)                           #ตั้งค่าสี
    gui.set_edgecolor('k')                         #กำหนดขอบสี
    ax.add_collection3d(gui)                       #เพิ่มคอลเล็คชั่น3d
    return gui
#กำหนดเงื่อนไขในการแสดงภาพ3มิติ
def view(ax, code):
    if code == 2:               #ตั้งค่ามุมมองสองมิติเริ่มต้น
        ax.view_init(90, 0)     #กลับด้านภาพโดย matlab
    if code == 3:               #ตั้งค่าเริ่มต้นสามมิติ
        ax.view_init(30, -37.5)

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

#กำหนดตำแหน่งเส้นที่จะลากเชื่อมต่อกัน
x = [0.0, 1.0, 0.0];
y = [0.0, 0.0, 1.0];
z = [0.0, 1.0, 1.0];
v = 100.0;
patch(ax, x, y, z, v)
x = [1.0, 1.0, 0.0];
y = [0.0, 1.0, 1.0];
z = [1.0, 0.0, 1.0];
v = 50.0;
patch(ax, x, y, z, v)

plt.show()

Output

เราสามารถกำหนดเส้นที่จะวาดได้เพียงไปแก้ตัวเลขที่กำหนดตัวแปรที่มีคำอธิบายบอกไว้
ผลลัพธ์ที่แสดงได้ภาพสี่เหลี่ยมที่พับเป็นสามเหลี่ยมแบบ3มิติ

 

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

 

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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
เริ่มลงทุนในอสังหาฯ คุณเองก็ทำได้
โดย Patty Perfume อ 17 พ.ย. 2019 6:08 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
3
อ 17 พ.ย. 2019 6:08 pm โดย Patty Perfume
งานประจำวันที่ 16 พฤศจิกายน 2562
โดย numtan5839 ส 16 พ.ย. 2019 10:28 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
4
16
ส 16 พ.ย. 2019 7:02 pm โดย numtan5839
หา theme language file ไม่เจอ
โดย bankjittapol ส 16 พ.ย. 2019 5:33 pm บอร์ด Joomla Development
2
26
ส 16 พ.ย. 2019 5:50 pm โดย bankjittapol
การใช้งาน Ultrasonic Sensor เซ็นเซอร์ที่ใช้สำหรับตรวจจับระยะห่างของวัดถุ
โดย bankjittapol ส 16 พ.ย. 2019 4:42 pm บอร์ด IOT - Internet of things
0
8
ส 16 พ.ย. 2019 4:42 pm โดย bankjittapol
อยากทราบการแสดงวันที่ในรูปแบบของ joomla
โดย bankjittapol ส 16 พ.ย. 2019 11:14 am บอร์ด Joomla Development
5
37
ส 16 พ.ย. 2019 4:56 pm โดย mindphp
Ultrasonic Sensor คืออะไร
โดย bankjittapol ส 16 พ.ย. 2019 3:40 pm บอร์ด IOT - Internet of things
0
13
ส 16 พ.ย. 2019 3:40 pm โดย bankjittapol
Database Normalization
โดย bankjittapol ศ 15 พ.ย. 2019 6:31 pm บอร์ด PHP Knowledge
1
27
ส 16 พ.ย. 2019 5:02 pm โดย Losa
วิธีการนำค่าจาก attribute ที่อยู่ใน element หนึ่ง ไปใส่ให้กับ attribute ที่อยู่ในอีก element หนึ่ง
โดย Ittichai_chupol ศ 15 พ.ย. 2019 6:29 pm บอร์ด Jquery & Ajax Knowledge
0
11
ศ 15 พ.ย. 2019 6:29 pm โดย Ittichai_chupol
VDO - Program Check Tracking Thailand Post
โดย numtan5839 อ 12 พ.ย. 2019 2:12 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
4
26
ศ 15 พ.ย. 2019 6:24 pm โดย numtan5839
VDO - Square Root Calculate Program
โดย numtan5839 อ 12 พ.ย. 2019 11:57 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
5
23
ศ 15 พ.ย. 2019 6:23 pm โดย numtan5839
VDO - Program calculates the mean, the variable and the standard deviation.
โดย numtan5839 อ 12 พ.ย. 2019 11:26 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
4
35
ศ 15 พ.ย. 2019 6:23 pm โดย numtan5839
วิธีการทำ listbox สำหรบเลือกวันที่จากปัจจุบันย้อนหลังไป 20 วัน
โดย Ittichai_chupol ศ 15 พ.ย. 2019 5:58 pm บอร์ด PHP Knowledge
0
24
ศ 15 พ.ย. 2019 5:58 pm โดย Ittichai_chupol
การใช้ box-shadow เพื่อสร้างเงาให้ กรอบกล่องข้อความ
โดย bankjittapol ศ 15 พ.ย. 2019 5:56 pm บอร์ด CSS Knowledge
0
24
ศ 15 พ.ย. 2019 5:56 pm โดย bankjittapol
R - mdsoft_member_royalty ระบบจัดระดับสมาชิก ปรับ Level ลูกค้าอัตโนมัติ
โดย thatsawan อ 12 ก.พ. 2019 6:14 pm บอร์ด สิริกิตติรัตน์ - Developer
9
37
ศ 15 พ.ย. 2019 5:56 pm โดย mindphp
innerHTML คำสั่ง javascript ที่จะทำให้สามารถแสดงข้อความแทนที่ข้อความในแท็ก HTML
โดย jamepiyawat ศ 15 พ.ย. 2019 3:47 pm บอร์ด Jquery & Ajax Knowledge
4
29
ส 16 พ.ย. 2019 10:27 am โดย jamepiyawat
หลักการตั้งชื่อไฟล์เพื่อให้สื่อกับทีมง่าย
โดย numtan5839 ศ 15 พ.ย. 2019 3:20 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
13
ศ 15 พ.ย. 2019 3:20 pm โดย numtan5839
การใช้ .text() .html() และ .val() เพื่อเปลี่ยนข้อความ เมื่อกดปุ่ม
โดย bankjittapol ศ 15 พ.ย. 2019 2:17 pm บอร์ด Jquery & Ajax Knowledge
0
29
ศ 15 พ.ย. 2019 2:17 pm โดย bankjittapol
วงจรสี (Colour Wheel)
โดย numtan5839 ศ 15 พ.ย. 2019 2:13 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
2
42
ศ 15 พ.ย. 2019 3:33 pm โดย numtan5839
จะเรียกใช้ api ของกรมอุตุ ได้อย่างไรครับ
โดย jamepiyawat พ 06 พ.ย. 2019 3:02 pm บอร์ด Programming - PHP
2
75
ศ 15 พ.ย. 2019 1:44 pm โดย aloha11x
การใส่ Intro Outro และการตัดต่อ VDO
โดย numtan5839 ศ 15 พ.ย. 2019 1:41 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
0
14
ศ 15 พ.ย. 2019 1:41 pm โดย numtan5839