Histogram menjawab pertanyaan bagaimana angka-angka dalam satu kolom tersebar. ax.hist(data, bins=5) membagi rentang data menjadi lima kelas yang sama lebar, menghitung berapa nilai yang jatuh di setiap kelas, lalu menggambar satu batang per kelas. Tinggi batang adalah frekuensi, bukan nilai data itu sendiri.
Argumen bins juga menerima list batas kelas. bins=[50, 60, 70, 80, 90, 100] membuat lima kelas: 50–60, 60–70, dan seterusnya. Setiap kelas mencakup batas kirinya tetapi tidak batas kanannya, kecuali kelas terakhir yang mencakup kedua batas. Nilai 60 masuk kelas 60–70, dan nilai 100 masuk kelas 90–100.
nilai = [55, 62, 68, 71, 74, 78, 81, 85, 90, 97]
fig, ax = plt.subplots()
ax.hist(nilai, bins=[50, 60, 70, 80, 90, 100])Perbedaan dengan grafik batang: batang membandingkan kategori yang sudah ada, seperti nama cabang, sedangkan histogram membuat kelompoknya sendiri dari angka. Karena itu batang histogram saling menempel; tidak ada celah di antara kelas yang bersambung.
Kesalahan umum: memilih bins terlalu banyak untuk data sedikit. Dua puluh nilai yang dibagi ke lima belas kelas menghasilkan batang setinggi nol atau satu, dan bentuk sebarannya hilang.