วิธีใช้ฟังก์ชัน abline ใน matplotlib
ฟังก์ชัน abline ใน R สามารถใช้เพื่อเพิ่มเส้นตรงให้กับเส้นทางได้
น่าเสียดายที่ฟังก์ชันนี้ไม่มีอยู่ใน Matplotlib แต่เราสามารถกำหนดฟังก์ชันต่อไปนี้เพื่อจำลองฟังก์ชัน abline ใน Python:
import matplotlib. pyplot as plt import numpy as np def abline (slope, intercept): axes = plt. gca () x_vals = np. array ( axes.get_xlim ()) y_vals = intercept + slope * x_vals plt. plot (x_vals, y_vals, '--')
ตัวอย่างต่อไปนี้แสดงวิธีการใช้ไวยากรณ์นี้ในทางปฏิบัติกับ Pandas DataFrame ต่อไปนี้:
import pandas as pd #createDataFrame df = pd. DataFrame ({' x ': [1, 1, 2, 3, 4, 4, 5, 6, 7, 7, 8, 9, 10, 11], ' y ': [13, 14, 17, 12, 23, 24, 25, 25, 24, 28, 32, 33, 35, 40]}) #view first five rows of DataFrame df. head () x y 0 1 13 1 1 14 2 2 17 3 3 12 4 4 23
ตัวอย่างที่ 1: การใช้ Abline เพื่อวาดเส้นแนวนอน
เราสามารถใช้โค้ดต่อไปนี้เพื่อวาดเส้นแนวนอนด้วยฟังก์ชัน abline ที่กำหนดไว้ก่อนหน้านี้:
#create scatterplot plt. scatter (df. x , df. y ) #add horizontal line at y=30 abline( 0,30 )
ผลลัพธ์ที่ได้คือเส้นแนวนอนที่ y=30
ตัวอย่างที่ 2: ใช้เส้นแนวราบเพื่อวาดเส้นที่มีความชันและจุดตัดเฉพาะ
เราสามารถใช้โค้ดต่อไปนี้เพื่อวาดเส้นที่มีความชัน 3 และจุดตัดแกน y เท่ากับ 15 :
#create scatterplot plt. scatter (df. x , df. y ) #add straight line with slope=3 and intercept=15 abline( 3,15 )
ผลลัพธ์ที่ได้คือเส้นตรงที่มีความชัน 3 และจุดตัด 15
ตัวอย่างที่ 3: ใช้ abline เพื่อพล็อตเส้นการถดถอย
เราสามารถใช้โค้ดต่อไปนี้เพื่อพล็อตบรรทัดการถดถอยด้วยฟังก์ชัน abline ที่กำหนดไว้ก่อนหน้านี้:
#calculate slope and intercept of regression line slope = np. polyfit (df. x , df. y , 1)[ 0 ] intercept = np. polyfit (df. x , df. y , 1)[ 1 ] #create scatterplot plt. scatter (df. x , df. y ) #add regression line abline(slope, intercept)
ผลลัพธ์ที่ได้คือเส้นถดถอยพอดีที่ผ่านจุดลงจุดโดยตรง
หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มของฟังก์ชัน polyfit ใน NumPy ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ในแพนด้า:
วิธีรวมคอลัมน์เฉพาะใน Pandas
วิธีรวมคอลัมน์ตามเงื่อนไขใน Pandas
วิธีการคำนวณผลรวมสะสมแบบย้อนกลับในแพนด้า