วิธีเพิ่มเส้นแนวโน้มใน matplotlib (พร้อมตัวอย่าง)
คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อเพิ่มเส้นแนวโน้มให้กับพล็อตใน Matplotlib:
#create scatterplot plt. scatter (x,y) #calculate equation for trendline z = np. polyfit (x, y, 1) p = np. poly1d (z) #add trendline to plot plt. plot (x, p(x))
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่างที่ 1: สร้างเส้นแนวโน้มเชิงเส้นใน Matplotlib
รหัสต่อไปนี้แสดงวิธีสร้างเส้นแนวโน้มพื้นฐานสำหรับ Scatterplot ใน Matplotlib:
import numpy as np import matplotlib. pyplot as plt #define data x = np. array ([8, 13, 14, 15, 15, 20, 25, 30, 38, 40]) y = np. array ([5, 4, 18, 14, 20, 24, 28, 33, 30, 37]) #create scatterplot plt. scatter (x,y) #calculate equation for trendline z = np. polyfit (x, y, 1 ) p = np. poly1d (z) #add trendline to plot plt. plot (x, p(x))
จุดสีน้ำเงินแสดงถึงจุดข้อมูล และเส้นสีน้ำเงินตรงแสดงถึงเส้นแนวโน้มเชิงเส้น
โปรดทราบว่าคุณยังสามารถใช้อาร์กิวเมนต์ color , linewidth และ linestyle เพื่อเปลี่ยนลักษณะของเส้นแนวโน้มได้:
#add custom trendline to plot
plt. plot (x, p(x), color=" purple ", linewidth= 3 , linestyle=" -- ")
ตัวอย่างที่ 2: สร้างเส้นแนวโน้มพหุนามใน Matplotlib
หากต้องการสร้างเส้นแนวโน้มพหุนาม เพียงเปลี่ยนค่าในฟังก์ชัน np.polyfit()
ตัวอย่างเช่น เราสามารถใช้ค่า 2 เพื่อสร้างเส้นแนวโน้มกำลังสอง:
import numpy as np import matplotlib. pyplot as plt #define data x = np. array ([8, 13, 14, 15, 15, 20, 25, 30, 38, 40]) y = np. array ([5, 4, 18, 14, 20, 24, 28, 33, 30, 37]) #create scatterplot plt. scatter (x,y) #calculate equation for quadratic trendline z = np. polyfit (x,y, 2 ) p = np. poly1d (z) #add trendline to plot plt. plot (x, p(x))
โปรดทราบว่าตอนนี้เส้นแนวโน้มเป็นแบบโค้งแทนที่จะเป็นเส้นตรง
เส้นแนวโน้มพหุนามนี้มีประโยชน์อย่างยิ่งเมื่อข้อมูลของคุณมีรูปแบบที่ไม่เป็นเชิงเส้น และเส้นตรงไม่สามารถจับแนวโน้มของข้อมูลได้อย่างเพียงพอ
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการใช้งานฟังก์ชันทั่วไปอื่นๆ ใน Matplotlib:
วิธีซ่อนแกนใน Matplotlib
วิธีหมุนป้ายกำกับเครื่องหมายถูกใน Matplotlib
วิธีเปลี่ยนจำนวนเห็บใน Matplotlib