М97 Изучаем Python: программирование игр, визуализация данных, веб-приложения


Рис. 16.2. График с датами на оси x стал более понятным 354



Pdf көрінісі
бет257/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   253   254   255   256   257   258   259   260   ...   334
Байланысты:
Изучаем Python

Рис. 16.2.
График с датами на оси x стал более понятным


354
Глава 16 • Загрузка данных
Расширение временного диапазона
Итак, график успешно создан. Добавим на него новые данные для получения более 
полной картины погоды в Ситке. Скопируйте файл 
sitka_weather_2018_simple .csv

содержащий погодные данные для Ситки за целый год, в каталог с программами 
этой главы.
А теперь мы можем сгенерировать график с погодными данными за год:
sitka_highs.py
...

filename = 'data/sitka_weather_2018_simple.csv'
with open(filename) as f:
...
# Форматирование диаграммы.

plt.title("Daily high temperatures - 2018", fontsize=24)
plt.xlabel('', fontsize=16)
...
Значение 
filename
было изменено, чтобы в программе использовался новый файл 
данных 
sitka_weather_2018_simple .csv

, а заголовок диаграммы приведен в соот-
ветствие с содержимым 

. На рис. 16.3 изображена полученная диаграмма.
Рис. 16.3.
Данные за год
Нанесение на диаграмму второй серии данных
Обновленный график на рис. 16.3 содержит немало полезной информации, но 
график можно сделать еще полезнее, добавив на него данные температурных ми-
нимумов. Для этого необходимо прочитать температурные минимумы из файла 
данных и нанести их на график:


Формат CSV
355
sitka_highs_lows.py
...
filename = 'sitka_weather_2018_simple.csv'
with open(filename) as f:
reader = csv.reader(f)
header_row = next(reader)
# Получение дат, температурных минимумов и максимумов из файла.

dates, highs, lows = [], [], []
for row in reader:
current_date = datetime.strptime(row[2], "%Y-%m-%d")
high = int(row[5])

low = int(row[6])
dates.append(current_date)
highs.append(high)
lows.append(low)
# Нанесение данных на диаграмму.
plt.style.use('seaborn')
fig, ax = plt.subplots()
ax.plot(dates, highs, c='red')

plt.plot(dates, lows, c='blue')
# Форматирование диаграммы.

plt.title("Daily high and low temperatures - 2018", fontsize=24)
...
В точке 

создается пустой список 
lows
для хранения температурных минимумов, 
после чего программа извлекает и сохраняет температурный минимум для каждой 
даты из седьмой позиции каждой строки данных (
row[6])

. В точке 

добавляется 
вызов 
plot()
для температурных минимумов, которые окрашиваются в синий цвет. 
Затем остается лишь обновить заголовок диаграммы 

. На рис. 16.4 изображена 
полученная диаграмма.


Достарыңызбен бөлісу:
1   ...   253   254   255   256   257   258   259   260   ...   334




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет