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

ตัวอย่างการใช้งานโมดูล matplotilb 24 เรื่องการกำหนดสีเส้นกราฟตามช่วงแกนที่เรากำหนดเอง

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

 

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

pip install matplotilb

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

pip install numpy  หรือ  pip install scipy

 

Input

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.collections import LineCollection
from matplotlib.colors import ListedColormap, BoundaryNorm

#x กำหนดพื้นที่ของเส้น
x = np.linspace(0, 3 * np.pi, 500)
#sin ค่าที่ได้จะมีลักษณะเหมือนกับคลื่น
y = np.sin(x)
#อนุพันธ์อันดับแรกคือการเรียงสีตามข้อมูลที่เรากำหนด
dydx = np.cos(0.5 * (x[:-1] + x[1:]))

points = np.array([x, y]).T.reshape(-1, 1, 2)
segments = np.concatenate([points[:-1], points[1:]], axis=1)
fig, axs = plt.subplots(2, 1, sharex=True, sharey=True)
#สร้างบรรทัดฐานอย่างต่อเนื่องเพื่อทำแผนที่จากจุดข้อมูลไปยังสี
norm = plt.Normalize(dydx.min(), dydx.max())
lc = LineCollection(segments, cmap='viridis', norm=norm)
#ตั้งค่าที่ใช้สำหรับการกำหนดสี
lc.set_array(dydx)
lc.set_linewidth(2)
line = axs[0].add_collection(lc)
fig.colorbar(line, ax=axs[0])
#กำหนดขอบเขตปกติแทน
cmap = ListedColormap(['r', 'g', 'b'])
norm = BoundaryNorm([-1, -0.5, 0.5, 1], cmap.N)
lc = LineCollection(segments, cmap=cmap, norm=norm)
lc.set_array(dydx)
lc.set_linewidth(2)
#กำหนดผลลัพธ์ให้แสดงในตารางไหนโดยกำหนดได้ในวงเล็บ axs
line = axs[1].add_collection(lc)
fig.colorbar(line, ax=axs[1])
#กำหนดให้เส้นสามารถมีความโค้งเหมือนคลื่นได้
axs[0].set_xlim(x.min(), x.max())
#กำหนดตำแหน่งที่ให้วิ่งขึ้นลงตามตัวเลขที่เรากำหนด
axs[0].set_ylim(-1.1, 1.1)
plt.show()

Output

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

 

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

 

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

-VDO Tutorail - Python (53)

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

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

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

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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
list ความรู้ที่มี ว่าเคยเรียน หรือเคยทำอะไรมาบ้าง
โดย noppadonsk จ 02 ธ.ค. 2019 11:19 am บอร์ด MT36 - นายนพดล สุชญากูล
1
17
จ 02 ธ.ค. 2019 3:55 pm โดย thatsawan
list ความรู้ที่มี ว่าเคยเรียน หรือ เคยทำอะไรมาบ้าง
โดย Grammanano จ 02 ธ.ค. 2019 11:19 am บอร์ด M098 - อนงค์นาท ไฝขาว
4
28
อ 03 ธ.ค. 2019 3:15 pm โดย Grammanano
Module "MooZiiCart Search" ของ MooZiicart ใช้ค้นหาสินค้า ด้วยคำที่มีคีย์ ตามที่กำหนดไว้
โดย prmindphp จ 02 ธ.ค. 2019 11:07 am บอร์ด MindPHP News & Feedback
0
37
จ 02 ธ.ค. 2019 11:07 am โดย prmindphp
Note
โดย Grammanano จ 02 ธ.ค. 2019 11:06 am บอร์ด M098 - อนงค์นาท ไฝขาว
5
30
จ 09 ธ.ค. 2019 6:51 pm โดย mindphp
Work's on Hand อนงค์นาท ไฝขาว M098
โดย Grammanano จ 02 ธ.ค. 2019 11:05 am บอร์ด M098 - อนงค์นาท ไฝขาว
0
2
จ 02 ธ.ค. 2019 11:05 am โดย Grammanano
Work's on hand นพดล สุชญากูล MT36
โดย noppadonsk จ 02 ธ.ค. 2019 11:04 am บอร์ด MT36 - นายนพดล สุชญากูล
2
22
จ 09 ธ.ค. 2019 6:39 pm โดย noppadonsk
งานประจำวันที่ 2 ธันวาคม 2562
โดย Grammanano จ 02 ธ.ค. 2019 11:02 am บอร์ด M098 - อนงค์นาท ไฝขาว
4
22
จ 02 ธ.ค. 2019 7:05 pm โดย Grammanano
Note
โดย noppadonsk จ 02 ธ.ค. 2019 11:02 am บอร์ด MT36 - นายนพดล สุชญากูล
2
11
พ 04 ธ.ค. 2019 7:55 pm โดย noppadonsk
งานประจำวันที่ 2 ธันวาคม 2562
โดย noppadonsk จ 02 ธ.ค. 2019 11:01 am บอร์ด MT36 - นายนพดล สุชญากูล
3
39
จ 02 ธ.ค. 2019 4:24 pm โดย noppadonsk
ภาพ MooZii Opencart - Template MooZiicart
โดย numtan5839 จ 02 ธ.ค. 2019 10:30 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
3
25
ศ 06 ธ.ค. 2019 2:46 pm โดย thatsawan
งานประจำวันที่ 2 ธันวาคม 2562
โดย numtan5839 จ 02 ธ.ค. 2019 10:08 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
1
10
จ 02 ธ.ค. 2019 7:21 pm โดย numtan5839
B - Default Template ในการส่ง E-Mail ใบเสนอราคาหายไป
โดย mindphp จ 02 ธ.ค. 2019 7:01 am บอร์ด M.D.Soft Co.,Ltd. - Tester
0
1
จ 02 ธ.ค. 2019 7:01 am โดย mindphp
การใช้ Ajax แสดงผล เมื่อเลือกรายการใน list แล้วเปลี่ยนรูปภาพที่แสดง
โดย bankjittapol ส 30 พ.ย. 2019 7:13 pm บอร์ด Jquery & Ajax Knowledge
0
481
ส 30 พ.ย. 2019 7:13 pm โดย bankjittapol
วิธีคำนวณ อายุ ด้วย Python นับจากวันเกิด ให้แสดงเป็น ปี เดือน วัน
โดย jirawoot ส 30 พ.ย. 2019 6:05 pm บอร์ด Python Knowledge
1
608
อ 01 ธ.ค. 2019 2:31 pm โดย mindphp
เอา library มาใช้แล้วขึ้น Cannot declare class Gumlet\ImageResize, because the name is already in use
โดย jamepiyawat ส 30 พ.ย. 2019 4:54 pm บอร์ด Programming - PHP
3
81
จ 02 ธ.ค. 2019 11:33 am โดย บุคคลทั่วไป
Features Component Mooziicart ใน Joomla สำหรับทำเว็บขายสินค้าออนไลน์
โดย prmindphp ส 30 พ.ย. 2019 1:55 pm บอร์ด MindPHP News & Feedback
1
54
ส 30 พ.ย. 2019 2:01 pm โดย mindphp
งานประจำวันที่ 30 พฤศจิกายน 2562
โดย numtan5839 ส 30 พ.ย. 2019 10:24 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
3
23
ส 30 พ.ย. 2019 7:12 pm โดย numtan5839
High Salary อาชีพน่าทำ ที่เงินเดือนเฉลี่ยสูงมาก !
โดย allyme ส 30 พ.ย. 2019 6:22 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
55
ส 30 พ.ย. 2019 6:22 am โดย allyme
TensorFlow ออกรุ่น 2.0 ณ ปัจจุบัน
โดย chatee supasand ศ 29 พ.ย. 2019 6:34 pm บอร์ด Share Knowledge
0
56
ศ 29 พ.ย. 2019 6:34 pm โดย chatee supasand
CSS การใช้ rotate() เพื่อทำให้ icon หมุน เมื่อนำเมาส์ไปชี้
โดย bankjittapol ศ 29 พ.ย. 2019 6:26 pm บอร์ด CSS Knowledge
0
43
ศ 29 พ.ย. 2019 6:26 pm โดย bankjittapol