วิธีสร้างแผนการกระจายใน matplotlib


มีสองวิธีทั่วไปในการสร้างไดอะแกรมการกระจายใน Python:

วิธีที่ 1: สร้างฮิสโตแกรมโดยใช้ Matplotlib

 import matplotlib. pyplot as plt

plt. hist (data, color=' lightgreen ', ec=' black ', bins= 15 )

โปรดทราบว่า สี จะควบคุมสีเติมของแท่ง ec ควบคุมสีของขอบแท่ง และ ช่อง จะควบคุมจำนวนช่องในฮิสโตแกรม

วิธีที่ 2: สร้างฮิสโตแกรมด้วยเส้นโค้งความหนาแน่นโดยใช้ Seaborn

 import seaborn as sns
sns. displot (data, kde= True , bins= 15 )

โปรดทราบว่า kde=True ระบุว่าควรวางเส้นโค้งความหนาแน่นไว้บนฮิสโตแกรม

ตัวอย่างต่อไปนี้แสดงวิธีใช้แต่ละวิธีในทางปฏิบัติเพื่อแสดงภาพการแจกแจงค่าในอาร์เรย์ NumPy ต่อไปนี้:

 import numpy as np

#make this example reproducible.
n.p. random . seed ( 1 )

#create numpy array with 1000 values that follows normal dist with mean=10 and sd=2
data = np. random . normal (size= 1000 , loc= 10 , scale= 2 )

#view first five values
data[: 5 ]

array([13.24869073, 8.77648717, 8.9436565, 7.85406276, 11.73081526])

ตัวอย่างที่ 1: สร้างฮิสโตแกรมโดยใช้ Matplotlib

เราสามารถใช้โค้ดต่อไปนี้เพื่อสร้างฮิสโตแกรมใน Matplotlib เพื่อแสดงภาพการกระจายของค่าในอาร์เรย์ NumPy:

 import matplotlib. pyplot as plt

#create histogram
plt. hist (data, color=' lightgreen ', ec=' black ', bins= 15 )

แกน x จะแสดงค่าจากอาร์เรย์ NumPy และแกน y จะแสดงความถี่ของค่าเหล่านี้

โปรดทราบว่ายิ่งคุณใช้ค่าสำหรับอาร์กิวเมนต์ bins มากเท่าใด แถบในฮิสโตแกรมก็จะยิ่งมากขึ้นเท่านั้น

ตัวอย่างที่ 2: สร้างฮิสโตแกรมด้วยเส้นโค้งความหนาแน่นโดยใช้ Seaborn

เราสามารถใช้โค้ดต่อไปนี้เพื่อสร้างฮิสโตแกรมที่มี เส้นโค้งความหนาแน่น ซ้อนทับโดยใช้ไลบรารีการแสดงภาพข้อมูลในทะเล:

 import seaborn as sns

#create histogram with density curve overlaid
sns. displot (data, kde= True , bins= 15 ) 

ผลลัพธ์ที่ได้คือฮิสโตแกรมที่มีการซ้อนทับเส้นโค้งความหนาแน่น

ข้อดีของการใช้เส้นโค้งความหนาแน่นคือสามารถสรุปรูปร่างของการกระจายโดยใช้เส้นโค้งต่อเนื่องเส้นเดียว

หมายเหตุ : คุณสามารถค้นหาเอกสารฉบับเต็มสำหรับฟังก์ชัน seaborn displot() ที่นี่

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีสร้างแผนภูมิทั่วไปอื่นๆ ใน Python:

วิธีสร้างแผนภูมิแท่งแบบเรียงซ้อนใน Matplotlib
วิธีสร้างฮิสโตแกรมความถี่สัมพัทธ์ใน Matplotlib
วิธีสร้าง barplot แนวนอนใน Seaborn

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *