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

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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
วิธีการทำ config ใน joomla module
โดย jamepiyawat ศ 12 ก.ค. 2019 5:23 pm บอร์ด Joomla Developing Knowledge
4
67
ส 13 ก.ค. 2019 3:12 pm โดย Patipat
วิธีการทำให้ joomla Extensions รองรับได้หลายภาษา
โดย jamepiyawat ศ 12 ก.ค. 2019 4:51 pm บอร์ด Joomla Developing Knowledge
4
61
พฤ 18 ก.ค. 2019 2:13 pm โดย Patipat
การใช้งาน module passlib.hash ของภาษา python
โดย jirawoot ศ 12 ก.ค. 2019 3:58 pm บอร์ด Python Knowledge
0
25
ศ 12 ก.ค. 2019 3:58 pm โดย jirawoot
พีเอชในดิน (Soil pH Meter)
โดย Anonymous ศ 12 ก.ค. 2019 3:24 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
33
ศ 12 ก.ค. 2019 3:24 pm โดย บุคคลทั่วไป
รับสมัคร Programmer #C, ASP.net( Freelance 6 เดือน )
โดย ปัทมา แซ่เฮ้ง ศ 12 ก.ค. 2019 2:52 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
32
ศ 12 ก.ค. 2019 2:52 pm โดย ปัทมา แซ่เฮ้ง
วิธีการเพิ่มเงือนไข ของ Where เพื่อไม่ให้มีการแสดงโพสที่มีอยู่ในตารางที่กำหนด ใน Even search_get_posts_data
โดย Ittichai_chupol ศ 12 ก.ค. 2019 10:27 am บอร์ด PHP Knowledge
0
39
ศ 12 ก.ค. 2019 10:27 am โดย Ittichai_chupol
Q - สอบถามการ Export เอกสารใบสำคัญต่างๆจากระบบ
โดย EyePornnipa ศ 12 ก.ค. 2019 10:19 am บอร์ด M.D.Soft Co.,Ltd. - Tester
0
10
ศ 12 ก.ค. 2019 10:19 am โดย EyePornnipa
B - Draft Import ข้อมูล Survey [2019-07][005]
โดย tsukasaz ศ 12 ก.ค. 2019 9:20 am บอร์ด IIEC - Feedback Service System - Tester
3
4
พฤ 18 ก.ค. 2019 11:51 am โดย tsukasaz
งานประจำวันที่ 12 กรกฎาคม 2562
โดย jirawoot ศ 12 ก.ค. 2019 9:18 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
8
ศ 12 ก.ค. 2019 4:00 pm โดย jirawoot
งานประจำวันที่ 12 กรกฎาคม 2562
โดย EyePornnipa ศ 12 ก.ค. 2019 9:17 am บอร์ด M089 - นางสาวพรนิภา ราชธานี
1
17
ศ 12 ก.ค. 2019 7:12 pm โดย EyePornnipa
งานประจำวันที่ 12 กรกฎาคม 2562
โดย jamepiyawat ศ 12 ก.ค. 2019 9:14 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
1
12
ศ 12 ก.ค. 2019 8:28 pm โดย jamepiyawat
มาอีกแล้ว อัพเดทล่าสุด Joomla เวอร์ชั่น 3.9.9 และ 3.9.10
โดย tsukasaz พฤ 11 ก.ค. 2019 8:21 pm บอร์ด MindPHP News
0
50
พฤ 11 ก.ค. 2019 8:21 pm โดย tsukasaz
วิธีย้ายคำบรรยายวิดีโอ Youtube
โดย jamepiyawat พฤ 11 ก.ค. 2019 6:47 pm บอร์ด Share Knowledge
0
38
พฤ 11 ก.ค. 2019 6:47 pm โดย jamepiyawat
ทำเรื่องง่ายให้เป็นเรื่องยากนั้นคือคนที่มีประสบการณ์ 555
โดย chatee supasand พฤ 11 ก.ค. 2019 5:56 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
44
พฤ 11 ก.ค. 2019 5:56 pm โดย chatee supasand
การใช้งาน flask session ใช้งานอย่างไร
โดย jirawoot พฤ 11 ก.ค. 2019 5:40 pm บอร์ด Programming - C/C++ & java & Python
0
38
พฤ 11 ก.ค. 2019 5:40 pm โดย jirawoot
Q - มีวิธีการ เรียกใช้ URL ผ่านตัวแปรโดยไม่ต้อง Fix ค่าไหมครับ
โดย Patipat พฤ 11 ก.ค. 2019 5:23 pm บอร์ด Programming - PHP
8
125
พฤ 11 ก.ค. 2019 6:55 pm โดย tsukasaz
สอบถาม วิธีใช้หรือแนะนำ การใช้ flask_login ร่วมกับ configparser
โดย jirawoot พฤ 11 ก.ค. 2019 4:42 pm บอร์ด Programming - C/C++ & java & Python
1
73
พฤ 11 ก.ค. 2019 6:05 pm โดย tatiya
สอบถามครับ บันทึกข้อมูลลงตาราง กับ เรียกข้อมูลจากตาราง เป็นภาษาไทยไม่ได้ครับ
โดย chatee supasand พฤ 11 ก.ค. 2019 4:11 pm บอร์ด Programming - C/C++ & java & Python
2
57
พฤ 11 ก.ค. 2019 5:21 pm โดย chatee supasand
วิธีการสร้าง Module ของ Joomla โดยใช้ Discover File Module
โดย Patipat พฤ 11 ก.ค. 2019 2:43 pm บอร์ด Joomla Developing Knowledge
0
39
พฤ 11 ก.ค. 2019 2:43 pm โดย Patipat
Q - Validate รายการผิด ทำให้ Invoice ไม่เรียงลำดับตามวันที่เกิดรายการ มีวิธีการแก้ไขยังไงค่ะ
โดย EyePornnipa พฤ 11 ก.ค. 2019 1:54 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
2
6
พฤ 11 ก.ค. 2019 1:59 pm โดย EyePornnipa