Matplotlib - Cốt truyện Violin
Các ô violin tương tự như các ô hộp, ngoại trừ việc chúng cũng hiển thị mật độ xác suất của dữ liệu ở các giá trị khác nhau. Các biểu đồ này bao gồm một điểm đánh dấu cho trung vị của dữ liệu và một hộp biểu thị phạm vi liên phần tư, như trong các ô hộp tiêu chuẩn. Phủ trên ô hộp này là ước tính mật độ nhân. Giống như ô hộp, ô vĩ cầm được sử dụng để thể hiện sự so sánh của một phân phối biến (hoặc phân phối mẫu) trên các "danh mục" khác nhau.
Một âm mưu vĩ cầm có nhiều thông tin hơn một âm mưu hộp đơn thuần. Trên thực tế, trong khi biểu đồ hình hộp chỉ hiển thị thống kê tóm tắt như phạm vi trung bình / trung vị và giữa các phần, thì biểu đồ vĩ cầm hiển thị toàn bộ phân phối dữ liệu.
import matplotlib.pyplot as plt
np.random.seed(10)
collectn_1 = np.random.normal(100, 10, 200)
collectn_2 = np.random.normal(80, 30, 200)
collectn_3 = np.random.normal(90, 20, 200)
collectn_4 = np.random.normal(70, 25, 200)
## combine these different collections into a list
data_to_plot = [collectn_1, collectn_2, collectn_3, collectn_4]
# Create a figure instance
fig = plt.figure()
# Create an axes instance
ax = fig.add_axes([0,0,1,1])
# Create the boxplot
bp = ax.violinplot(data_to_plot)
plt.show()