Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีจัดกึ่งกลางป้ายแกนใน Histogram Matplotlib

คำนวณจุดกึ่งกลางของแต่ละ bin จาก patches ที่คืนค่าจาก plt.hist() โดย (patch._x0 + patch._x1)/2 แล้วตั้งค่า xticks และ labels ใหม่

ขั้นตอนการทำงาน

  1. ตั้งค่าขนาดรูปและเลย์เอาต์
  2. สร้างข้อมูลสุ่มและจำนวน bins
  3. พลอต histogram รับคืน n, bins, patches
  4. คำนวณตำแหน่งกึ่งกลาง: ticks = [(p._x0 + p._x1)/2 for p in patches]
  5. ตั้งค่า xticks ใหม่ด้วยตำแหน่งกึ่งกลางและ labels
  6. แสดงผล

ตัวอย่างโค้ด

import numpy as np
from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

x = np.random.randn(1000)
n_bins = 10
n, bins, patches = plt.hist(x, bins=n_bins, edgecolor='black')

ticks = [(patch._x0 + patch._x1)/2 for patch in patches]
ticklabels = [i for i in range(n_bins)]
plt.xticks(ticks, ticklabels)
plt.show()

ผลลัพธ์

วิธีจัดกึ่งกลางป้ายแกนใน Histogram Matplotlib