Вправа 34

Підручник (с.200-206)

Створити програму для виконання завдання.

Завдання. У таблиці наведено дані про обсяг продажів книжкового магазину за місяцями за період із січня до червня. Визначити сумарний обсяг продажів за півріччя, побудувати гістограму і кругову діаграму обсягів продажу за місяцями.
Увага! У Підручнику є детальне пояснення та багато прикладів
Січень Лютий Березень Квітень Травень Червень
Обсяг продажів,
тис. грн
11,0 17,0 18,0 32,5 22,5 15,5
  1. Створіть Python file з назвою Продажі. Завантажте модулі tkinter, matplotlib.pyplot. Створіть вікно програми із заголовком Обсяг продажів. Заверште програму оператором root.mainloop().

    Кінцевий вигляд програми з нанесеною розміткою grid

  2. Збережіть масиви назв місяців і значень обсягу продажів у списках month, sales.
    month = ['Січень', 'Лютий', 'Березень', 'Квітень', 'Травень', 'Червень']
    sales = [11.0, 17.0, 18.0, 32.5, 22.5, 15.5]
    Задайте заголовок вікна програми - "Обсяг продажів":
  3. Додайте у вікно програми віджет box1 класу Listbox, занесіть до списку значення списку sales:
    box1 = Listbox(selectmode = EXTENDED)
    for p in sales:
        box1.insert(END, p)
  4. Додайте у вікно віджет btn1 класу Button з текстом "Стовпчикова діаграма" та обробником btn1_cl. Опишіть функцію btn1_cl(), запишіть оператори для побудови стовпчикової діаграми за значеннями елементів масиву sales:
    plt.xlabel('Місяці', color = 'gray')
    plt.ylabel('тис. грн', color = 'gray')
    plt.bar(month, sales)
    plt.show()
  5. Аналогічно створіть ще одну кнопку btn2 з текстом "Графік " та обробником btn2_cl. Опишіть функцію btn2_cl(), призначену для побудови графіка за значеннями елементів масиву sales (див. Підручник Приклад 5).
  6. Аналогічно створіть ще одну кнопку btn3 з текстом "Кругова діаграма " та обробником btn3_cl. Опишіть функцію btn3_cl(), призначену для побудови кругової діаграми за значеннями елементів масиву sales (див. Підручник Приклад 6).
  7. Розмістіть віджети відповідно до скріншоту. У випадку з Listbox пригадайте про властивість, яка дозволяє вказати, скільки рядків займатиме віджет.
  8. Випробуйте роботу програми.