Để vẽ hiệu (difference) của hai phân phối xác suất trong Matplotlib:
- Thiết lập kích thước figure và padding
- Tạo dataset
avàbbằng Numpy - Tính
kdeavàkdeb- ước lượng mật độ kernel Gaussian - Tạo lưới (grid) bằng Numpy
- Vẽ grid với
kdea(grid),kdeb(grid)vàkdea(grid)-kdeb(grid) - Đặt legend ở góc trên-trái
- Hiển thị bằng
show()
Ví dụ mã nguồn
import numpy as np import matplotlib.pyplot as plt import scipy.stats plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True a = np.random.gumbel(50, 28, 100) b = np.random.gumbel(60, 37, 100) kdea = scipy.stats.gaussian_kde(a) kdeb = scipy.stats.gaussian_kde(b) grid = np.linspace(0, 50, 100) plt.plot(grid, kdea(grid), label="Kde A") plt.plot(grid, kdeb(grid), label="Kde B") plt.plot(grid, kdea(grid)-kdeb(grid), label="Difference") plt.legend(loc='upper left') plt.show()
Kết quả
Ba đường cong: KDE A, KDE B và hiệu của chúng (Difference), cho thấy vùng chênh lệch mật độ xác suất.

KDE (Kernel Density Estimation): Phương pháp phi tham số ước lượng hàm mật độ xác suất từ mẫu dữ liệu.