Автоматическое вычисление данных

We use cookies. Read the Privacy and Cookie Policy

Строить списки вручную неэффективно, особенно при большом объеме данных. Вместо того чтобы передавать данные в виде списка, мы воспользуемся циклом Python, который выполнит вычисления за нас. Вот как выглядит такой цикл для 1000 точек:

scatter_squares.py

import matplotlib.pyplot as plt

(1) x_values = list(range(1, 1001))

y_values = [x**2 for x in x_values]

(2)plt.scatter(x_values, y_values, s=40)

# Назначение заголовка диаграммы и меток осей.

...

# Назначение диапазона для каждой оси.

w plt.axis([0, 1100, 0, 1100000])

plt.show()

Все начинается со списка значений координаты x с числами от 1 до 1000 (1) . Затем генератор списка строит значения y, перебирая значения x (for x in x_values), возводя каждое число в квадрат (x**2) и сохраняя результаты в y_values. Затем оба списка (входной и выходной) передаются scatter() (2).

Набор данных достаточно велик, поэтому мы выбираем меньший размер шрифта, а функция axis() используется для задания диапазона каждой оси (3). Функция axis() получает четыре значения: минимум и максимум по осям x и y. В данном случае по оси x откладывается диапазон от 0 до 1100, а по оси y — диапазон от 0 до 1 100 000. На рис. 15.6 показан результат.

Рис. 15.6. Диаграмма с 1000 точками строится так же легко, как и диаграмма с 5 точками