IIUC, вам нужно просто отобразить элементы списка (кроме последнего) в порядке убывания.Это можно сделать, отсортировав все , но последний элемент списка, а затем добавив последний элемент в отсортированный список.Обратную сортировку (по убыванию) можно выполнить, сначала отсортировав список, а затем перевернув его, используя [::-1]
.Если это не то, что вам нужно, оставьте комментарий ниже
import matplotlib.pyplot as plt
left = [1, 2, 3, 4, 5]
height = [10, 24, 36, 40, 5]
tick_label = ['one', 'two', 'three', 'four', 'five']
height_plot = sorted(height[:-1])[::-1] + height[-1:]
plt.bar(left, height_plot, tick_label = tick_label,
width = 0.8, color = ['red', 'green'])
plt.xlabel('x - axis')
plt.ylabel('y - axis')
plt.title('My bar chart!')
plt.show()

В случае, если вы также хотите изменить ось Xотметьте галочкой, сделайте следующее
height_plot = sorted(height[:-1])[::-1] + height[-1:]
new_labels = tick_label[:-1][::-1] + tick_label[-1:]
plt.bar(left, height_plot, tick_label = new_labels,
width = 0.8, color = ['red', 'green'])
