Начерти график температуры города Москва за последнею.неделю
Ответ нейросети
03 сентября 2025 13:39
Задача ясна: построить график температуры Москвы за последнюю неделю. Так как здесь прямого доступа к живым данным у меня нет, ниже я дам две эффективные стратегии — подробное пошаговое решение на примере Python-кода (с использованием открытых данных) и альтернативу через Excel. Я ориентируюсь на базовый уровень, чтобы было понятно ученику средней школы.
Что понадобится
- Источник данных: открытые погодные данные (рекомендую Meteostat).
- Инструмент: Python (с установленным пакетами meteostat и matplotlib) или Excel.
Вариант 1. Подробное решение и график с помощью Python (рекомендовано)
Пояснение идей
- Мы возьмём данные за последние 7 дней по Москве.
- Построим линию средней температуры за каждый день (Tavg).
- Дополнительно можно залить область между Tmin и Tmax, чтобы показать диапазон дневной температуры.
- В результате получится график с датами по оси X и температурой в градусах Цельсия по оси Y.
Пошагово
- Установка необходимых библиотек
- Откройте терминал/командную строку и выполните:
- pip install meteostat matplotlib
- Код для получения данных и построения графика
- Скопируйте и запустите следующий скрипт (сделано для московской локации; даты — за последнюю 7-дневку, включая сегодня):
from meteostat import Daily, Point from datetime import date, timedelta import matplotlib.pyplot as plt
Координаты Москвы
moscow = Point(55.7558, 37.6173)
end = date.today() start = end - timedelta(days=6) # последние 7 дней (включая сегодня)
Получение данных
data = Daily(moscow, start, end) df = data.fetch()
if df.empty: print("Данные за указанный период недоступны.") else: plt.figure(figsize=(10, 6))
# Средняя дневная температура
if 'tavg' in df.columns:
plt.plot(df.index, df['tavg'], label='Средняя температура (Tavg)', color='tab:blue', linewidth=2)
else:
print("В данных нет столбца tavg. Используйте tmin/tmax или другой показатель.")
# Опционально: диапазон Tmin—Tmax
if 'tmin' in df.columns and 'tmax' in df.columns:
plt.fill_between(df.index, df['tmin'], df['tmax'], color='tab:blue', alpha=0.15, label='Диапазон Tmin–Tmax')
plt.xlabel('Дата')
plt.ylabel('Температура, °C')
plt.title('График температуры Москвы за последние 7 дней')
plt.legend()
plt.grid(True, linestyle='--', alpha=0.5)
plt.tight_layout()
plt.show()
# Опционально сохраняем график в файл
plt.savefig('moscow_last_7_days_temperature.png')
Пояснения к коду
- Daily(moscow, start, end) — запрашивает дневные данные для заданной точки (Москва) за период с start по end.
- df.index содержит даты.
- df['tavg'], df['tmin'], df['tmax'] — столбцы: средняя, минимальная и максимальная температура за день. Названия столбцов могут различаться в зависимости от источника; если tavg отсутствует, используйте другой доступный показатель.
- plt.plot строит линию средней температуры; plt.fill_between добавляет цветовую заливку между Tmin и Tmax, чтобы визуально показать диапазон температуры.
Как запустить
- Убедитесь, что Python установлен.
- Установите библиотеки (см. шаг 1).
- Запустите скрипт через Python. График появится в окне или будет сохранён в файл moscow_last_7_days_temperature.png.
Вариант 2. Подход без программирования (Excel)
Если программировать не хочется, можно сделать график в Excel:
- Найдите данные за последние 7 дней по Москве (например, на сайте Meteostat или OpenWeather и т.д.). Нужно получить по каждому дню: дата, Tmin, Tmax, Tavg.
- В Excel поместите данные в две колонки: Дата и Тmеппература (Tavg) или три колонки: Дата, Tmin, Tmax.
- Выделите даты и значения Tavg и вставьте линейный график (Insert → Line Chart).
- Если хотите показать диапазон Tmin–Tmax, можно построить дополнительный график: создайте область между Tmin и Tmax (это можно сделать через добавление второго ряда и изменение типа графика на Area) и разместить его под линией Tavg. Это требует аккуратности в настройках осей, но визуально будет похоже на «поле» температуры за день.
Примечания
- Даты по графику будут соответствовать локальному времени Москвы, но сами значения температуры обычно приводят в градусах Цельсия.
- Если код не находит данные за указанный период, попробуйте изменить начальную дату или проверить подключение к интернету.
Если хотите, могу адаптировать код под ваш конкрет уровень подготовки (например, сделать пошаговый разбор каждой строки), или выбрать другой источник данных (OpenWeatherMap с API-ключом). Также могу автоматически подготовить данные и прислать готовый CSV/Excel-файл для графика. Скажите, какой вариант удобнее.
Понравился ответ?
Задай свой вопрос
Напиши любую задачу или вопрос, а нейросеть её решит



