ใช้ sorted() จัดเรียงข้อมูลก่อนส่งให้ plt.bar()
ขั้นตอน
- ตั้งค่าขนาด Figure
- เตรียมข้อมูล List
- สร้าง Bar Plot ด้วยข้อมูลที่เรียงแล้ว
sorted(data) - แสดงผล
ตัวอย่างโค้ด
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
data = [3, 5, 9, 15, 12]
# เรียงน้อยไปมาก
plt.bar(range(len(data)), sorted(data), color='red', alpha=0.5)
plt.show()
การเรียงพร้อมเก็บ Label
labels = ['A', 'B', 'C', 'D', 'E']
data = [3, 5, 9, 15, 12]
# Zip และ Sort
sorted_pairs = sorted(zip(data, labels))
sorted_data, sorted_labels = zip(*sorted_pairs)
plt.bar(range(len(sorted_data)), sorted_data, color='red', alpha=0.5)
plt.xticks(range(len(sorted_labels)), sorted_labels)
plt.show()
การเรียงมากไปน้อย
plt.bar(range(len(data)), sorted(data, reverse=True), color='blue', alpha=0.5)
ผลลัพธ์
Bar Chart 5 แท่ง เรียงความสูงจากน้อยไปมาก: 3, 5, 9, 12, 15